Post by Austinpowers on Apr 15, 2010 8:33:56 GMT -5
Hi All,
I have had numerous requests on what was being done. I have received permission to post this to the board. This will be a coordinated effort that MIGHT have a class revision, and will have some world additions/upgrades. If there is more I will post or the person in charge of this will update here.
NO PLAYER WIPE WILL BE NECCESARY
Eniac and I will be working very hard to make this a reality. We have the support of the admin. ;D
As of this writing, 90% of this is already in and being tested.
Jedi 6.0
1) Most of the code is now structured. Meaning I tried to line up all the code for readability. About 20,000 lines of code
2) Redundant code aka: extern int top_of_world was in some files multiple times, same with function calls. AKA: fname(), is_number() etc etc. I have removed all these redundancies.
3) Removed all Code related to old retired admin. RAID, Moonbeam, Pythe, Unicorn, Cosmo, Steppin. There was several references to their special procedures, and other code to protect them.
4) Global Buffers, Are gone. All procedures use local buffers.
5) Rewrote send_to_char(), send_to_room, send_to_room_except(), etc etc.
Old way was to : sprint(buffer, “text %s”, Variable)
Send_to_char(buffer, character);
New way:
Send_to_char(character, “text %s”, arguments);
This was done to all send_to_XXXX functions.
6) Several new files added.
a)I have added Comm.h <all communication references are now pulled from here> These used to be in the tops of every file. This reduces file overhead now.
b) Constants.h All arrays calls are now pulled from here. They also used to be in the tops of all files.
c) htree.c/htree.h this is for the new generation and unique id code, and index searching.
d) autowiz.c for automatic updates of the wizlist, and immlist
7) All objects will now be tagged with generation times and unique ID’s. This is to prevent duping. If objects are found in the game to have the same generation time or unique ID, they are logged and broadcast out on the syslog.
8) Mobiles and Rooms are also given unique ID’s so searching is much faster.
9) Comm.c the main game loop has been rewritten to come more in line with the circlemud standard. It is much more efficient and will make upgrades/additions much easier now.
10) Player ASCII files have been put in. I have 2 flags, 1 for ASCII_PFILES_SAVE, and 1 for ASCII_PFILES_LOAD. First ASCII_PFILES_SAVE will be enabled saving out the player base. Once this is done and all are satisfied that its fine, then we can enable ASCII_PFILES_LOAD and this will load the player base to ASCII Pfiles. This allows us to remove restrictions of adding to characters because we cannot change the binary file size. This will allow us to increase array sizes, alias sizes, quite a few other options being requested.
11) Some wizard commands have been tweaked. The Last command for instance, now it will show who and when someone logged in, or you can type last and it will give you the default last 10 people to log in. load<object/mobile> <vnum/name> <number> will load item via vnum or name, and you can specifiy how many of that particular item or mob. I have added a show unique, for all the unique objects in the game.
12) Mail, is now updated with mailable objects, and will be delivered by OWL during the game. I have added a toggle flag so you can turn this off, if you do not want mail to be delivered during the game. This is a 5 second TICK for delivery. I am working on adding the 30 day return to sender.
13) Rewritten the communications such as page_string(), show_string() in Modify.c Most noticeable in mail, player extra descriptions. Instead of adding functionality or making changes whole new calls were added show_string2, page_string2….
14) Rewritten do_tell. Please see further down
15) Redid Prompt string, and make prompt. It was MESS and was all over the place. Now its called in comm..c and divided into make_prompt(), proc_colors() and prompt_str(). It keeps all Jedi’s unique settings and add’s color and a few more options. Help file is available
16) In line with Proc_colors(), This is now called for any function adding color. Color codes start with @<color Code>. Anything in the game can use it. The menu system, the greeting.text, any world description, any communication.
17) Added new function calls create_obj(), create_char(), and create_room() in DB.c. Makes stardard calls to these easier to reference 1 call then having several in each file that required that code.
18) All functions dealing with unique ID’s and when object gereration(created) code are in DB.c
19) Interpreter.c nanny was updated so it was in line with the circlemud code base. Makes updates much easier, and separated the mess that was the function Nanny().
20) do_say() was also upgraded in act.comm.c
21) do_whisper, do_ask was now upgraded into a new function do_spec_comm(). In act.comm.c
22) Several lines in communication had CAN_SEE and were divided out accordingly. I have reduced this to
Send_to_char(ch, “TEXT %s said hi.”, *CAN_SEE(ch) ? “$n” : “Someone”);
23) Act() fuction has been rewritten to conform to the circlemud community.
24) The log function, I have added mudlog, but I have yet to fully implement it. I have a unique idea for logging.
25) Copyover, to allow for in game reboots, without any player having to log out.
26) A full rewrite of the do_look and cooresponding functions. Now the abbreviated directions as well as the full name directions will work. IE PICK NE, SCAN NE, etc etc
27) Autoexits highlight the doors, if not hidden or Dark.
28) The fight system will be upgraded. Nothing you are used to will be changed, only the fight engine.
29) A communiction history will be kept. You can type history tell, and it will report your last 5 tells.
30) Weather will be upgraded. The plan is for interactive weather. So that control weather actually works. If your on an island; hurricanes are possible, the plains; well tornados are possible, the desert; heat waves.. Yes damage can be possible.
31) Timed DT's. They can be preset times, or random. Meaning that if you enter a room, the DT might not pop for 2 ticks or 3. IE Quicksand does not kill you right away, but it does kill you. You can get out before the DT gets you.
32) Fixing of, or addition of many of the features on the coding list provided to me.
33) Boards will have years added to them. This might necessitate a board wipe.
***34) Online Configure menu, which will allow game toggles, features to be tweaked or modified while the game is up.
***35) Online Logging menu, to allow the admin to log events, issues, code, world events, as they the need.
***36) ASCII RENT FILES. Files will be saved out in ASCII format
**** Not definate as of this writing.
Finally:
I have removed all the module calls that every single file had. I have upgraded it to use the circlemud configure script. This will allow us to be platform independent if the code needs to move. The lines of code removed have been replaced with conf.h and sysdep.h.
Scott
Aka Austinpowers/Cunning/Gramps/Slyest and several other morts.
I have had numerous requests on what was being done. I have received permission to post this to the board. This will be a coordinated effort that MIGHT have a class revision, and will have some world additions/upgrades. If there is more I will post or the person in charge of this will update here.
NO PLAYER WIPE WILL BE NECCESARY
Eniac and I will be working very hard to make this a reality. We have the support of the admin. ;D
As of this writing, 90% of this is already in and being tested.
Jedi 6.0
1) Most of the code is now structured. Meaning I tried to line up all the code for readability. About 20,000 lines of code
2) Redundant code aka: extern int top_of_world was in some files multiple times, same with function calls. AKA: fname(), is_number() etc etc. I have removed all these redundancies.
3) Removed all Code related to old retired admin. RAID, Moonbeam, Pythe, Unicorn, Cosmo, Steppin. There was several references to their special procedures, and other code to protect them.
4) Global Buffers, Are gone. All procedures use local buffers.
5) Rewrote send_to_char(), send_to_room, send_to_room_except(), etc etc.
Old way was to : sprint(buffer, “text %s”, Variable)
Send_to_char(buffer, character);
New way:
Send_to_char(character, “text %s”, arguments);
This was done to all send_to_XXXX functions.
6) Several new files added.
a)I have added Comm.h <all communication references are now pulled from here> These used to be in the tops of every file. This reduces file overhead now.
b) Constants.h All arrays calls are now pulled from here. They also used to be in the tops of all files.
c) htree.c/htree.h this is for the new generation and unique id code, and index searching.
d) autowiz.c for automatic updates of the wizlist, and immlist
7) All objects will now be tagged with generation times and unique ID’s. This is to prevent duping. If objects are found in the game to have the same generation time or unique ID, they are logged and broadcast out on the syslog.
8) Mobiles and Rooms are also given unique ID’s so searching is much faster.
9) Comm.c the main game loop has been rewritten to come more in line with the circlemud standard. It is much more efficient and will make upgrades/additions much easier now.
10) Player ASCII files have been put in. I have 2 flags, 1 for ASCII_PFILES_SAVE, and 1 for ASCII_PFILES_LOAD. First ASCII_PFILES_SAVE will be enabled saving out the player base. Once this is done and all are satisfied that its fine, then we can enable ASCII_PFILES_LOAD and this will load the player base to ASCII Pfiles. This allows us to remove restrictions of adding to characters because we cannot change the binary file size. This will allow us to increase array sizes, alias sizes, quite a few other options being requested.
11) Some wizard commands have been tweaked. The Last command for instance, now it will show who and when someone logged in, or you can type last and it will give you the default last 10 people to log in. load<object/mobile> <vnum/name> <number> will load item via vnum or name, and you can specifiy how many of that particular item or mob. I have added a show unique, for all the unique objects in the game.
12) Mail, is now updated with mailable objects, and will be delivered by OWL during the game. I have added a toggle flag so you can turn this off, if you do not want mail to be delivered during the game. This is a 5 second TICK for delivery. I am working on adding the 30 day return to sender.
13) Rewritten the communications such as page_string(), show_string() in Modify.c Most noticeable in mail, player extra descriptions. Instead of adding functionality or making changes whole new calls were added show_string2, page_string2….
14) Rewritten do_tell. Please see further down
15) Redid Prompt string, and make prompt. It was MESS and was all over the place. Now its called in comm..c and divided into make_prompt(), proc_colors() and prompt_str(). It keeps all Jedi’s unique settings and add’s color and a few more options. Help file is available
16) In line with Proc_colors(), This is now called for any function adding color. Color codes start with @<color Code>. Anything in the game can use it. The menu system, the greeting.text, any world description, any communication.
17) Added new function calls create_obj(), create_char(), and create_room() in DB.c. Makes stardard calls to these easier to reference 1 call then having several in each file that required that code.
18) All functions dealing with unique ID’s and when object gereration(created) code are in DB.c
19) Interpreter.c nanny was updated so it was in line with the circlemud code base. Makes updates much easier, and separated the mess that was the function Nanny().
20) do_say() was also upgraded in act.comm.c
21) do_whisper, do_ask was now upgraded into a new function do_spec_comm(). In act.comm.c
22) Several lines in communication had CAN_SEE and were divided out accordingly. I have reduced this to
Send_to_char(ch, “TEXT %s said hi.”, *CAN_SEE(ch) ? “$n” : “Someone”);
23) Act() fuction has been rewritten to conform to the circlemud community.
24) The log function, I have added mudlog, but I have yet to fully implement it. I have a unique idea for logging.
25) Copyover, to allow for in game reboots, without any player having to log out.
26) A full rewrite of the do_look and cooresponding functions. Now the abbreviated directions as well as the full name directions will work. IE PICK NE, SCAN NE, etc etc
27) Autoexits highlight the doors, if not hidden or Dark.
28) The fight system will be upgraded. Nothing you are used to will be changed, only the fight engine.
29) A communiction history will be kept. You can type history tell, and it will report your last 5 tells.
30) Weather will be upgraded. The plan is for interactive weather. So that control weather actually works. If your on an island; hurricanes are possible, the plains; well tornados are possible, the desert; heat waves.. Yes damage can be possible.
31) Timed DT's. They can be preset times, or random. Meaning that if you enter a room, the DT might not pop for 2 ticks or 3. IE Quicksand does not kill you right away, but it does kill you. You can get out before the DT gets you.
32) Fixing of, or addition of many of the features on the coding list provided to me.
33) Boards will have years added to them. This might necessitate a board wipe.
***34) Online Configure menu, which will allow game toggles, features to be tweaked or modified while the game is up.
***35) Online Logging menu, to allow the admin to log events, issues, code, world events, as they the need.
***36) ASCII RENT FILES. Files will be saved out in ASCII format
**** Not definate as of this writing.
Finally:
I have removed all the module calls that every single file had. I have upgraded it to use the circlemud configure script. This will allow us to be platform independent if the code needs to move. The lines of code removed have been replaced with conf.h and sysdep.h.
Scott
Aka Austinpowers/Cunning/Gramps/Slyest and several other morts.