]> jfr.im git - irc/gameservirc.git/blobdiff - gameserv/Changes
updated the Change log w/ new additions
[irc/gameservirc.git] / gameserv / Changes
index e285e5f0f0e757926f689ba695e70d67f629a3e6..a3b604d1fa9f212875edc8c22a7388606569e423 100644 (file)
+Version 1.3.4
+* SET [playername] HP # now also sets the Max HP for a player if it's lower than what you're
+    setting the hp to. If you type /msg gameserv set player hp 1000, but their maxhp was
+    only 10, their maxhp will now be 1000 also - Kain
+* Added a new config file directive maxnicklen which lets you enforce a maximum length for
+    registering a new player - Kain (thanks Mauritz)
+* Fixed a bunch of memory leaks including one when a monster is found in the forest, when
+    the dragon is fought, and when a master is fought - Kain
+* Fixed a bug that would leave a player logged in after they quit - Kain (thanks Mauritz)
+Version 1.3.3
+* Fixed a bug causing players' HP to be set to 10 on gameserv load - Kain (thanks Mauritz)
+* Removed the timestamp update from the following commands if the player is fighting:
+    STATS, Inventory, and equip - Kain
+* Added a parameter to the USE command that allows you to specify how many items to
+    use at once - Kain
+* Really cleaned up the client/player list code. Converted it all to STL lists and changed
+    the players[] list to be a list<Player*> type instead of list<aClient*> - Kain
+* Added PTLink as an officially supported IRCD, although it should have worked with hybrid - Kain
+* Fixed a memory leak when a player quits - Kain
+* Fixed a bug that would allow a player to quit the network while fighting the dragon,
+    come back and fight a monster, and would become the new dragon - Kain (thanks Mauritz)
+* Restricted character names to alphanumeric characters only - Kain (thanks Mauritz)
+* Added a fair fight checker which won't allow people who can kill others with one hit
+    to even challenge other players - Kain (thanks Mauritz)
+* Fixed a bug that would delete a user upon reset or defeating the dragon - Kain
+* Fixed a compile bug for some operating systems in c_forest.cpp - Kain (thanks Mauritz)
+* Fixed a bug that occured when a player defeated another player and gameserv /noticed the channel
+    with the wrong name - Kain
+* Added a php directory to the source folder which contains a script for parsing the players.dat
+    file and put all the data into a mySQL database - Kain
+Version 1.3.2
+* Fixed a bug which allowed a player to run from the dragon, then fight a monster from the
+    forest and win the dragon fight - Kain (thanks Kit)
+* Fixed a bug causing the player to be given the item with id 3001 (stick by default) every
+    time they time out - Kain
+* Fixed a bug in the do_set() command which caused /msg gameserv set nick alive false/true not
+    to work - Kain (thanks vroomfondel)
+* Fixed a bug in do_set() which was causing /msg gameserv set seen master false to take off the
+    admin flag - Kain (thanks vroomfondel)
+* Fixed a few bugs in the do_set() function causing GameServ to crash on /msg gameserv set nick or
+    /msg gameserv set nick action - Kain (thanks vroomfondel)
+* Fixed a logic error in pouch::addItem() that returned the top inventory item after a resort
+    instead of returning the last item added - Kain
+* Made gameserv automatically equip the Stick and Clothes on register - Kain
+* Added a parameter to the TAVERN BUY function that allows you to specify how many
+    items to buy - Kain (Thanks Kit)
+* Fixed the Player class data to be much more encapsulated. Now, in the code, all access to
+    the data members is through a function - Kain
+Version 1.3.1
+* Added most of the monsters submitted as suggestions from the forums - Kain 
+    (Thanks DjSlash and CaliMonk)
+* Implemented DrLnet's Player Fight Notification mod - Kain
+* Added a config file directive NUMROLLOVERFIGHTS which is the number of forest fights that
+    roll over every ROLLOVERPERIOD - kain (Thanks thelizno)
+* Added a config file directive ROLLOVERFORESTFIGHTS which will allow you to keep the forest
+    fights from the previous day - kain (Thanks thelizno)
+* Added a config file directive ROLLOVERPERIOD which will allow you to specify a period of time
+    to rollover the forest fights - kain (Thanks thelizno)
+* Added a config file directive MAXFORESTFIGHTS which allows you to specify a maximum amount of
+    forest fights a player can roll over - kain (Thanks thelizno)
+* Changed the percentage of potions found to be 1% - Kain
+* Fixed the reset function to make sure it adds the proper inventory - Kain
+* Fixed a bug causing the gsident config file directive to be ignored on
+    UnrealIRCD - Kain (Thanks tsukasa)
+* Fixed a bug causing players to be shown their own inventory when someone
+    else requested their stats - Kain (Thanks thelizno)
+* Fixed a bug causing a crash on /msg GameServ use - kain (Thanks thelizno)
+* Fixed a bug causing a crash on /msg GameServ equip - Kain (Thanks thelizno)
+* Fixed a bug causing nothing to happen 2% of the time when you search the forest. This was
+    supposed to be when you find a potion, but it wasn't added since the new Item system. - Kain
+    (Thanks Tsukasa)
+* Fixed a bug in the masteritems.dat file causing the chain saw to take 1 strength point
+    away instead of add 185 - kain (Thanks Tsukasa)
+* Fixed a bug causing the amount of gold when you find a sack of gold to be calculated
+    really low - kain
+
+Version 1.3.0
+* Added a new config file directive "localhost" to specify an address to bind to - kain
+* Added a new config file directive for maximum number of items a player 
+    can carry - kain
+* Added www.gameserv.us website to the startup banner
+* Completed new item system: http://www.gameserv.us/viewtopic.php?t=21 - kain
+* Added a new config file directive for the master item data file - kain 
+
+Version 1.2.6
+* Implemented the new dragon/boss system as suggested by Tsukasa:
+    Whenever someone beats the dragon, their player is placed in the Dragon's spot
+    guarding the lair. All other attempts to fight the dragon will cause a duel
+    between your old character and the challenger. You essentially become the new
+    dragon, but the old character's name gets a DRAGON- next to it. You are also
+    now reset back to level 1 - kain w/ thanks to Tsukasa at watnet.org for the idea
+* Changed the way the sacks of gold and extra experience point forest
+    events were calculated. It is now just as if you killed a monster
+    and didn't have to fight - kain
+* Fixed the socket code to allow for hostnames to be put in the 
+    gameserv.conf for remoteserver instead of just IP addresses - kain
+* Added capability for GameServ to identify with NickServ on connection - thank you 
+    Tsukasa and watever
+* Added a /msg GameServ SET command with various options - kain
+
+Version 1.2.5
+* All level master data is now being stored in data/masters.dat - kain
+* Added a new config file directive that allows you to specify whether or
+    not you want gameserv to send notices to the channel every time it
+    writes the player database - kain
+* Some under the scenes changes have been made with the way players' and
+    monsters' names, weapons, and death phrases are being stored which
+    should make for less memory leakage and minimized overall memory
+    usage - kain
+* Fixed a minor bug where gameserv was not notifying of a syntax error in
+    /msg gameserv store buy x x - kain (thank you wolfgar)
+
+Version 1.2.4
+* Monsters are completely generated except for the names, weapons, and
+    death cries. A range is set for each level's strength, gold, exp, and
+    hp, and a new monster is generated at random during every forest
+    search. This makes for a more unique gaming experience at the expense
+    of some cpu time on random number generations - kain & wolfgar
+* The structure for holding monsters is now different. Monsters are all
+    stored in the monsters subdirectory in levelx.dat files where x is
+    the level 1 through 12. This will allow for an arbitrary amount of
+    monsters per level - kain & wolfgar
+* Every time a new news item is added, GameServ announces it in the forest
+    channel - kain
+* Added a notice to the forest channel that the player data was 
+    saved - kain
+* Fixed some things with the upper limts of money and experience - kain
+* Changed the command LIST so it only lists people who are playing.
+    To get a full list, use LIST ALL - kain
+* Added two new config file options which allow you to specify how
+    long to wait before deleting level 1 and other levels' accounts
+    separately - kain
+* Added a new command CHECK which will display the amount of time until
+    the next refresh - kain
+* Added a new config option to specify a refresh period in seconds.
+    Now you can specify how often you want the players to be given
+    new forest fights, etc... - kain
+* Fixed bug causing negative funds to be deposited into an account
+    (bugID 966653) (thank you Jono H - xjono)
+* Fixed a bug causing players to be duplicated on /msg gameserv 
+    load - kain
+* Added Ultimate2.8.x support - kain
+* Healing potions can only add up to 100 over your max HP now - kain
+* Changed the logic for the wishing well forest event. It now adds back 
+    a forest fight if you were broke - kain
+* Fixed a bug causing the wrong bonuses to be added when a level was 
+    gained, and none to be added on the last level - kain
+* Added daily news with automatic additions when you gain a level, 
+    unsuccessfully best your master, kill someone, or are killed - kain
+
+Version 1.2.3
+* Took experience out of calculating the cost of potions - kain
+* Added even more strength to masters (your defense bonus for each level) 
+    to try to even out the fight - kain
+* Added more strength to monsters past level 7 and changed the masters' 
+    stats accordingly - kain
+* Changed the fountain forest event to not take a forest fight if your 
+    HP is at max - kain
+* Added more experience per monster past level 7 - kain
+* Added a new forest event (find a potion) each potion has a 1/5 chance 
+    of being the one you found, and you have a 2% chance of incurring
+    this forest event - kain
+* Added notification that a player used a potion during a fight to the 
+    player they are fighting - kain
+* Added potions to the stats command - kain
+* Made the code a bit less dependent on 12 levels - kain
+* Added a new parameter to the list command that allows listing only 
+    those that are online and playing - kain
+* Added a new command "Dragon" which lets you fight the end boss - kain
+* Doubled the required experience for fighting masters - kain
+* Fixed a cosmetic bug (sorta) that caused your HP not to read 0 when
+    you're dead (thanks Ricky-S) - kain
+* Fixed a divide by 0 bug that occurred when you attacked, but had no 
+    weapon (BugID 946043) (thank you NOTevil) - kain
+* Fixed a logic error allowing players to bank during a fight - kain
+* Added more gold per monster above level 4 - kain
+
+Version 1.2.2
+* Fixed a logical error causing the ListenOnCF flag to only work in P10 
+    servers - kain
+* Fixed the store command to display syntax on improper sequence of 
+    commands (thanks damaged) - kain
+* Added monsters for levels 10, 11, and 12 (created by damaged, edited 
+    by kain) - kain
+* Made the masters stats match the next level's monsters' stats a lot 
+    closer - kain
+* Fixed a bug that crashed gameserv on /msg gameserv master - kain
+* Made welcomemsg an optional config file option. If commented out
+    or deleted, gameserv will not send the welcome message 
+    (requested by zshack)- kain
+* Made the ignoreservers config file option work for Unreal - kain
+* Fixed a minor logical problem that was causing players to be mugged
+    for 0 gold when they were either dead or had no gold on hand and
+    they timed out (thanks Rehm) - kain
+* Fixed the bug not allowing different config files to be used - kain
+* Added an optional config file directive BOPER which makes
+    gameserv become an oper on the network - kain
+* Added an optional config file directive USEPRIVMSG which makes
+    gameserv use /msg instead of /notice - kain
+* Made the ignoreservers config file option work for bahamut - kain
+* Fixed an error in do_register that was not adding the client to the
+    players list correctly, causing newly registered players to be
+    locked out of identifying until the next gameserv restart - kain
+* Fixed an error that crashed GameServ if you tried to fight a player
+    lower than the configured level - kain
+* Reduced the effect of potions since the price is down - kain
+* Reduced the price of potions significantly - kain
+* Added a few timeout events if you're not in a fight - kain
+
+Version 1.2.1
+* Included a crontab script in all new distros now - kain
+* Added a new flag that tells wether a person is playing instead of
+    relying solely on pointers - kain
+* Added a mechanism to ignore on a nick to nick basis, and implemented
+    code to auto-ignore nicks on certain servers - kain
+* Changed the HASH command to iHASH (case insensitive) and sHASH (case 
+    sensitive) - kain
+* Gameserv no longer opers - kain
+* New config file directive: listenonc_forest... see 
+    gameserv.example.conf - kain
+* Fixed a bug in identify that was causing players to be shown as not 
+    playing (after the change in functions) - kain
+* Fixed up the is_playing boolean function to be more strict - kain
+* A true timestamp is now sent on SJOIN for hybrid servers. TS of 1
+    was messing things up - kain
+* Logs are now timestamped as follows: mm/dd/yyyy HH:MM:SS - kain
+* Added a timeout mechanism with two new config file options - kain
+    - If players are fighting, and the one who's turn it is times out,
+       they lose their turn. If they both timeout after that,
+       they are logged out.
+    - If players are not fighting (player fights), they are simply 
+       logged out.
+* Fixed a major bug causing a crash when players fought - kain
+* The gameserv server now attempts 3 reconnects if disconnected - kain
+
+Version 1.2.0
+* Took +devel out of the version reply in gameserv.cpp - kain
+* Implemented a hashing algorithm for extremely fast searches through 
+    the players and clients linked lists - kain & wcampbel
+* Fixed some of the fight code - kain
+* Added a logout command so you don't have to quit the IRC Network to 
+    stop playing - kain
+* Fixed a bug that was causing players not to be voiced on the forest 
+    channel on P10 servers - kain
+* Added a missing code segment to decrement the player fights per 
+    day when you fight another player (reported by MaCbLiNd) - kain
+* Fixed a bug that allowed the same player name to be registered any 
+    number of times - kain
+* Fixed a problem in when players quit on a P10 server, the /msg 
+    gameserv list shows the irc nick as not NULL because it was only 
+    setting the regular nick and not the realnick - kain
+* Fixed a logic error in the identify command that caused players to be 
+    falsely shown as identified - kain
+* When a player logs off during a player fight, the fight now ends. 
+    Before it was held in limbo - kain
+* Fixed a bug in the fight command requiring you to use an irc nickname
+    to fight (BugID 927789) - kain
+
+Version 1.1.9
+* Added 2 new config file directives (maxafightdistance and maxbfightdistance)
+    These allow you to set limits on the distance (in levels) two players
+    are allowed to fight with. See gameserv.example.conf for more info. - kain
+* Fixed a bug in the identify command that falsly showed a player as 
+    already being identified. - kain
+* Created Monsters for level 9 - kain
+* Added the beginnings of an end monster - kain
+* Slightly adjust the weapon and armor bonuses to prevent a divide by zero
+    exception (reported by wassup). - wcampbel
+* Prevent players from issuing a FIGHT against a dead player (reported
+    by wassup). - wcampbel
+* Fixed a core in RUN if a client wasn't playing. - wcampbel
+* Added an option to specify the PID file in the config file. - kain
+
+Version 1.1.8
+* Missing directives now are identified for config files upon startup - kain
+* Added a --help option to the gameserv binary - kain
+* Added an optional command line parameter to load a config file - kain
+* Added a nifty startup intro with the version number. - Kain
+* Fixed BANK BALANCE (BugID 895157) - wcampbel
+* Completely removed the midnight() function code, and replaced it with 
+    some struct tm functionality with the localtime() function. - kain
+* Major changes to the Makefile, cleaned up a number of rules and added
+    dependencies (via make depend). - wcampbel
+* Corrected the VERSION reply, it broke ircII. - wcampbel
+* Fixed some P10/other protocol issues - wcampbel
+* Removed the old hard coded monsters entries. - wcampbel
+* Made gameserv load as a true daemon. gameserv.pid now contains the pid 
+    for the gameserv process. No more run script. - kain
+* Fixed a bug that caused the identify function to segfault. - kain
+* Fixed some P10 Functionality - kain
+* Merged in the Hybrid patch - wcampbel
+
+Version 1.1.7
+* Added P10 Functionality (ircu-2.10.11.x)
+* Created Monsters for level 8
+* Increased the size of the monster struct to account for longer names,
+    weapons, and death phrases.
+* Created Monsters for level 7
+* Fixed a bug causing the bank balance command not to work correctly.
+    (Thank you wcampbel)
+* Added HP potions to increase maximum HP.
+* Made strength and defense potions add either 1 or 2 points rather than
+    0, 1, or 2.
+* Made the monsters a bit harder. I found that as the game progressed,
+    it got easier and easier instead of harder.
+* Fixed the forest events from happening too often. Also, the fountain
+    forest event specifically was adding too many forest fights, making
+    the day never end.
+
+Version 1.1.6
+* Added a Reset command to GameServ that functions the same was as the
+    refresh command, except it completely resets a player to the beginning
+    of the game.
+* Fixed a bug that would cause monsters to have extremely high HP after
+    loading the monster database.
+* Tweaked the forest events percentages. They happened too frequently.
+* New player database format:
+    - Alive/Dead is no longer saved as a word in the database. It is
+       saved as a flag.
+    - 3 new integer values were added to the end of every player string
+       representing their inventory (healing, strength, and defense
+       potions).
+* Changed the Player structure to use 2 new flags which eliminated 2
+    boolean values (alive & yourturn) to save a little memory.
+* Fixed a bug that allowed a player already in a fight to be challenged
+    by another player. The other player was then locked into the fight
+    with no way out.
+* Added a use command that allows a player to use items in their inventory.
+    Currently the only items are health, strength, and defense potions.
+    Command may be used in battle, but it costs you your turn.
+* Changed the stats command so that it takes the player name as
+    the stats request. You type /msg GameServ stats nick still, but
+    nick no longer has to be on IRC. You use the player name instead of
+    the IRC Nickname.
+* Added a new hybrid patch to the contrib dir. (Thank you wcampbel)
+* Fixed a problem in the display_help() function that could cause a bus
+    error. The problem was with changing literal text when passed to the
+    function as a filename. The function now copies the data as a local
+    variable and modifies that. (Thank you wcampbel)
+* Fixed a bug that allowed a player to be registered twice if the player
+    was not online. (Thank you wcampbel)
+* Added an inventory command which allows players to view how many
+    potions they are storing.
+* Added a tavern command which allows players to buy potions and store
+    them in their inventory for later use.
+* Made some cosmetic changes to this file.
+* Added an inventory class Pouch which allows players to carry around
+    things such as potions and such.
+
+Version 1.1.5
+* Added a missing help file admin_commands. It was written before, but 
+    somehow was deleted.
+* Admins can now identify as any user without having the correct password.
+* Fixed a bug that allowed for two nicknames to identify for the same player.
+* Added a forestfights directive to the config file so admins can set the 
+    default daily forest fights.
+* Added a die directive to the config file that will not let you start 
+    GameServ if it is present.
+* Inputted monsters for Level 6. Six more levels left unfinished.
+* Changed confloadtime directive to welcomedelay directive in the config file.
+    This made more sense.
+* Added an updateperiod directive to the config file. This represents the 
+    period (in seconds) for updating the player data file. Every time the 
+    gameserv server gets a message it will check to see if "updateperiod" 
+    seconds or more have elapsed since the last update.
+
+Version 1.1.4
+* Fixed the welcome msg sending "ICK" instead of the nickname of a new 
+    aclient. (Thank you wcampbel)
+* Load now has an optional parameter "monsters" which will force a load of the
+    monsterdata file. This is useful for changing monsters on-the-fly.
+* Added a load_monsters function that loads from a preconfigured monsters.dat
+    file instead of hard coding the monsters into the array. Users can now 
+    change the monster configuration around without knowing C/C++.
+* Added a new directive to the config file: confloadtime
+    this represents the delay (in seconds) until GameServ sends a welcome 
+    message to incoming clients.
+* Added the welcome message to the config file. See gameserv.example.conf
+    for more info on how to use the variable as a formatted string.
+
+Version 1.1.3
+* Removed a lot of extra list searches by changing all of the boolean 
+    functions to take aClient as a parameter instead of a nickname string.
+* Added an is_alive boolean function. Players must now wait until the next 
+    day to play again.
+* Saving the player->flags integer to the players.dat file. Old databases 
+    will not work. 
+    QUICK FIX: put a 0 to the left of the encrypted passwords for all player 
+    entries so the database can load properly. Look in flags.h for a 
+    description of the way flags work.
+
+Version 1.1.2
+* Added a /version reply
+* Fixed the Makefile to include configscript.cpp
+* Added a join message when people connect to the IRCD. The message is set 
+    on a delay so that on the initial nick burst, the services do not send
+    everyone the message.
+* Changed the admin commands from a simple password interface to a more 
+    sophisticated flags approach. Now you have to identify with the 
+    administrator password once, and your flags indicate that you are an 
+    admin for all commands.
+* Full help files available in corrected form for the new administrator type
+    commands.
+
 Version 1.1.1
 * Added some admin features.
     - Refresh
 * Added help menu functionality for all commands.
-* Fixed the register command so it notified the client that registration was successful.
-* Changed the master command so that you didn't have to fight your master if you
-    had enough experience. There is now a question/fight subcommand set for the master
-    command.
-* Tweaked the masters a bit. Basically, they were too tough. Once a player had enough
-    experience, they had no chance against their master until they got the next two
-    weapons up. This made the next level too easy. Past level 1 still needs tweaking.
+* Fixed the register command so it notified the client that registration
+    was successful.
+* Changed the master command so that you didn't have to fight your master
+    if you had enough experience. There is now a question/fight subcommand
+    set for the master command.
+* Tweaked the masters a bit. Basically, they were too tough. Once a player
+    had enough experience, they had no chance against their master until
+    they got the next two weapons up. This made the next level too easy. 
+    Past level 1 still needs tweaking.
 * Added functionality for bahamut IRCD 
+
 Version 1.1.0
-* Added autoconf functionality to the gameserv package. Does not compile correctly on
-    SunOS without tweaking.
+* Added autoconf functionality to the gameserv package. Does not compile
+    correctly on SunOS without tweaking.
 * Fixed the game so that players stats reset at midnight UTC + 8 hours.
     time(NULL) - (time(NULL) % 86400) + 3600 * 8
 * Added a contrib directory with a user submitted patch for hybrid ircd.