Post by satori on May 11, 2006 14:22:10 GMT
Some delays popped up, number one being a lightning storm. Old computer no more, new computer MUCH better, so no tears. Second, I had to redo my DB structure twice, including redoing some of the tables. That sucked.
The current plan is to have the intro shell (everything in the first book up to turning to page 1) for player creation and inventory mucking about. I hope to have this in a few weeks, and it will be publicly tested once I have it working.
Public testing will continue as I add components (random numbers, skill use, combat, etc...) untill the demo script is fully working. After that the first book will be privately tested by PA staff to ensure it meets all the quality standards and consistancy standards present in the normal digital version.
Once it has been through QA, it will be added to the PA collection, and the code will be released to the public. Being realistic, it could take a few weeks for each component to be coded, and a good month to design an XML parse routine and admin interface for converting book XML into what the LWAOC will need.
There will also be a gap when I move (1 month) as I am going to another state and starting a new job there. It could well be a christmas gift, but done this way adding new books should go fast, and not require much from me, as long as the XML parse routines and admin pannel is coded well.
Looking at the LW and GS rulesets, it would seem that most of the code for LW can be translated directly over to GS, and even a chunk of it for the Freeway Warrior series. Most of the needed changes would actually be GUI related, as I am coding the LWOAC to operate in a modular fashion. More below.
Given that people will move through a book at different paces, I'm leaning towards having a progress section in the GUI. It would have several boxes for each event on a page, and clicking on the active box would then run the needed code module. When done, an OK button will light up, and pressing it will move to the next stage. For optional events (like picking up the Prince's sword) you can click the OK button instead of the active event button to skip it.
This lets you have a pause to do common actions (manipulate inv, use a potion, etc...) at each stage, as well as preserving your status within a given page if you logout/lose connection or such. This also means the main LWOAC engine can accept new event types.
For example, using Freeway Warrior which has a different ruleset, inventory system, etc... only a few changes to the LWOAC code would have to be made. The item table would have to be redone slightly for new/old item/weapon attributes, and the player table would also. The rest of it, since h2h is the same, could run the LWOAC code with new events coded to be run in a page. The type of coding being done is as generic as possible. Codes for checks would be coded so the actual call would accept all the parameters like so :
If Checkpass(discipline, level, mods, initial, israndom, tohit)
Then {On pass code here......}
End if
discipline is the array index for the skill being checked
level if the level of skill in the Disc. to pass. 0 is for a true/false check.20 is used if it's not a pass/fail and the rest of the values are used
mods indicate the +/- made to the numerical check
initial starting value for check
israndom indicates if a random number is added to the total that must reach the tohit level
tohit is the number needed to pass if it's not a pass/fail check
This (or a similar form of it) lets me divorce the actual checking from what is being checked. This means it works for all of Joe's books that PA has (not including the graphic ones), since these are the basic mechanics used for skill/disc checks, as lore circles and higher levels of a skill, as well as cross skill boosts (if you have hunting, add an additional 2 to the number and the like), all fit under the mods field as a stackable numerical value.
Since this is ALL new to me (PHP is a lang I have never used before, and I've never written a game with an existing "Do not change!" ruleset) there will be many stops and starts, but I promise at the very least to code enough to get the first book in, and leave enough tools to add new books without my input.
That's all, rambling done
The current plan is to have the intro shell (everything in the first book up to turning to page 1) for player creation and inventory mucking about. I hope to have this in a few weeks, and it will be publicly tested once I have it working.
Public testing will continue as I add components (random numbers, skill use, combat, etc...) untill the demo script is fully working. After that the first book will be privately tested by PA staff to ensure it meets all the quality standards and consistancy standards present in the normal digital version.
Once it has been through QA, it will be added to the PA collection, and the code will be released to the public. Being realistic, it could take a few weeks for each component to be coded, and a good month to design an XML parse routine and admin interface for converting book XML into what the LWAOC will need.
There will also be a gap when I move (1 month) as I am going to another state and starting a new job there. It could well be a christmas gift, but done this way adding new books should go fast, and not require much from me, as long as the XML parse routines and admin pannel is coded well.
Looking at the LW and GS rulesets, it would seem that most of the code for LW can be translated directly over to GS, and even a chunk of it for the Freeway Warrior series. Most of the needed changes would actually be GUI related, as I am coding the LWOAC to operate in a modular fashion. More below.
Given that people will move through a book at different paces, I'm leaning towards having a progress section in the GUI. It would have several boxes for each event on a page, and clicking on the active box would then run the needed code module. When done, an OK button will light up, and pressing it will move to the next stage. For optional events (like picking up the Prince's sword) you can click the OK button instead of the active event button to skip it.
This lets you have a pause to do common actions (manipulate inv, use a potion, etc...) at each stage, as well as preserving your status within a given page if you logout/lose connection or such. This also means the main LWOAC engine can accept new event types.
For example, using Freeway Warrior which has a different ruleset, inventory system, etc... only a few changes to the LWOAC code would have to be made. The item table would have to be redone slightly for new/old item/weapon attributes, and the player table would also. The rest of it, since h2h is the same, could run the LWOAC code with new events coded to be run in a page. The type of coding being done is as generic as possible. Codes for checks would be coded so the actual call would accept all the parameters like so :
If Checkpass(discipline, level, mods, initial, israndom, tohit)
Then {On pass code here......}
End if
discipline is the array index for the skill being checked
level if the level of skill in the Disc. to pass. 0 is for a true/false check.20 is used if it's not a pass/fail and the rest of the values are used
mods indicate the +/- made to the numerical check
initial starting value for check
israndom indicates if a random number is added to the total that must reach the tohit level
tohit is the number needed to pass if it's not a pass/fail check
This (or a similar form of it) lets me divorce the actual checking from what is being checked. This means it works for all of Joe's books that PA has (not including the graphic ones), since these are the basic mechanics used for skill/disc checks, as lore circles and higher levels of a skill, as well as cross skill boosts (if you have hunting, add an additional 2 to the number and the like), all fit under the mods field as a stackable numerical value.
Since this is ALL new to me (PHP is a lang I have never used before, and I've never written a game with an existing "Do not change!" ruleset) there will be many stops and starts, but I promise at the very least to code enough to get the first book in, and leave enough tools to add new books without my input.
That's all, rambling done