Commit Graph

580 Commits

Author SHA1 Message Date
Loïc Hoguin
6ec02be0f4 psu_game: Small change to send_1005 based on research. 2010-09-03 01:45:05 +02:00
Loïc Hoguin
f785b290bb psu_proto: Add a new event: party_remove_member. NPCs can now be removed from the party. 2010-09-02 23:48:27 +02:00
Loïc Hoguin
bab8913645 psu_game: Handle the npc_force_invite event properly. 2010-09-02 21:40:26 +02:00
Loïc Hoguin
2ef6a53f58 psu_game: Fix a GID/NPCid mismatch in the npc_invite event. 2010-09-02 21:37:55 +02:00
Loïc Hoguin
8de811642c psu_proto: Move send_010d to psu_proto. 2010-09-02 19:02:39 +02:00
Loïc Hoguin
dbdc02bcd0 psu_proto: Move send_0201 to psu_proto. 2010-09-02 17:43:25 +02:00
Loïc Hoguin
63b3b0a7b9 psu_game: Small fix to 0402 command handling based on research. 2010-09-02 17:16:15 +02:00
Loïc Hoguin
07299c69c9 psu_game: Small fix to the item_equip event based on research. 2010-09-02 16:49:52 +02:00
Loïc Hoguin
d1a30ecc63 psu_npc: Make sure the NPC level doesn't go below 1 or above 200. 2010-09-02 16:38:01 +02:00
Loïc Hoguin
79d36e5313 psu_game: The chat event now ignore again when FromGID=0, since it shouldn't happen. 2010-09-02 16:34:18 +02:00
Loïc Hoguin
dc6c9b180a psu_game: Fix the sent LID in send_1004. This fixes the tutorial mission. 2010-09-02 16:28:48 +02:00
Loïc Hoguin
8204740117 psu_game: send_022c seems to be related to parties... or NPCs. 2010-09-02 01:05:10 +02:00
Loïc Hoguin
28bb2f92cb psu_game: Small improvements to send_0201 based on research. 2010-09-02 00:58:27 +02:00
Loïc Hoguin
111d37f0a1 psu_game: Small improvements to send_1004 based on research. 2010-09-02 00:52:42 +02:00
Loïc Hoguin
5af19cd663 psu_game: Small improvements to send_1016 based on research. 2010-09-02 00:47:26 +02:00
Loïc Hoguin
a258c388a7 psu_game: Temporarily allow chat to be sent from GID = 0. Prevents disconnection while investigating a bug with the tutorial. 2010-09-02 00:20:03 +02:00
Loïc Hoguin
9f42e24cea psu_characters: Small changes based on research. 2010-09-01 23:54:41 +02:00
Loïc Hoguin
6dd3a05026 psu_proto: Fix a small bug when parsing the player's name in the chat command. 2010-09-01 23:53:26 +02:00
Loïc Hoguin
e2538b45a7 psu_appearance: Replace a few unused values, dependent on race, by their actual defaults on official. 2010-09-01 23:28:31 +02:00
Loïc Hoguin
69641cd459 psu_game: Reenable send_022c in npc_invite event. 2010-08-30 15:39:40 +02:00
Loïc Hoguin
0d3cad936e item_equip/unequip: Rename ItemID and PAID into ItemIndex and PAIndex. 2010-08-29 23:09:06 +02:00
Loïc Hoguin
2ba8020f24 Review send_020c and move it to psu_proto. 2010-08-29 22:21:23 +02:00
Loïc Hoguin
f0754543cf Review send_0215 and move it to psu_proto. 2010-08-29 22:15:32 +02:00
Loïc Hoguin
dfb8f691fb Review send_020e and move it to psu_proto. 2010-08-29 19:22:02 +02:00
Loïc Hoguin
597d51c0ee Review send_0205 and move it to psu_proto. 2010-08-29 19:09:01 +02:00
Loïc Hoguin
d9586cfd10 Review send_0a05 and move it to psu_proto. 2010-08-29 18:41:21 +02:00
Loïc Hoguin
9fc62c8130 Review send_0c00 and move it to psu_proto. 2010-08-29 18:31:23 +02:00
Loïc Hoguin
b77e04acf8 psu_proto: Add npc_force_invite to events and do nothing (for now). 2010-08-29 13:41:53 +02:00
Loïc Hoguin
68e9ebdc06 psu_game: Small workaround to allow starting a story mission. 2010-08-29 13:39:03 +02:00
Loïc Hoguin
c0089cef87 psu_game: Command 1601 requires a PartyPos. Fix dumb NPC problem. 2010-08-29 13:38:16 +02:00
Loïc Hoguin
e2248ebfd0 psu_game: Small typo fix. 2010-08-27 23:01:41 +02:00
Loïc Hoguin
f335a1fadf psu_game: Use the area_change event instead of calling area_load directly. 2010-08-27 19:00:27 +02:00
Loïc Hoguin
883c12eea7 psu_game: 12_xx commands must not be sent on area change that stays in the same zone. 2010-08-27 18:54:23 +02:00
Loïc Hoguin
2d8b8ce602 psu_proto: Parse command 0102(2) and then do nothing (for now). 2010-08-27 18:24:53 +02:00
Loïc Hoguin
e21735a289 psu_game: Remove the NPC characters on reload. 2010-08-27 15:05:39 +02:00
Loïc Hoguin
09de3c245e psu_game: Remove the NPC characters and stop the party on quit. 2010-08-27 15:02:53 +02:00
Loïc Hoguin
8db82f8260 psu_game: Don't recreate a party on each NPC invite. 2010-08-27 02:18:39 +02:00
Loïc Hoguin
b7d3c1634f Added many NPC characters. Fixed movement for NPCs other than Lou. 2010-08-27 02:03:58 +02:00
Loïc Hoguin
b28dff2e3a psu_proto: Move player_options_change to events. 2010-08-26 21:27:49 +02:00
Loïc Hoguin
7495f49876 mission_start event: Don't send a counter_background_locations_reply here. 2010-08-26 20:38:54 +02:00
Loïc Hoguin
fe280b93e3 psu_proto: Move counter_background_locations_request to events. 2010-08-26 20:37:53 +02:00
Loïc Hoguin
ac624b34c6 psu_proto: Parse command 1707 and then do nothing (for now). 2010-08-26 19:31:45 +02:00
Loïc Hoguin
b25eb9cb65 psu_proto: Parse command 010b and then do nothing (for now). 2010-08-26 19:21:57 +02:00
Loïc Hoguin
7f5b3af101 psu_proto: Parse and then ignore command 0c0d. 2010-08-26 18:40:59 +02:00
Loïc Hoguin
112b394d0b psu_proto: Parse and then ignore command 0806. 2010-08-26 18:40:38 +02:00
Loïc Hoguin
ad9c8847be psu_proto: Parse and then ignore command 0808. 2010-08-26 18:23:37 +02:00
Loïc Hoguin
d07b6c7cff psu_proto: Parse and then ignore command 080d. 2010-08-26 18:19:14 +02:00
Loïc Hoguin
753d3e843c psu_proto: Parse and then ignore command 0814. 2010-08-26 18:09:53 +02:00
Loïc Hoguin
0a06702683 psu_proto: Parse and then ignore command 0815. 2010-08-26 18:09:27 +02:00
Loïc Hoguin
d5a7336662 psu_proto: Parse and then ignore command 021c. 2010-08-26 18:04:56 +02:00
Loïc Hoguin
ea81ac7f64 psu_login: Reject clients version < 2.009.2. 2010-08-26 17:18:47 +02:00
Loïc Hoguin
bd21a5e5db psu_game: Move object_box_destroy and object_event_trigger to events. 2010-08-26 14:51:24 +02:00
Loïc Hoguin
bcfdc699b5 psu_proto: Moved hit and hits to events. 2010-08-26 14:41:35 +02:00
Loïc Hoguin
0a0a96ad3d psu_game: Temporary log the game version to make sure it makes sense using it. 2010-08-25 02:02:45 +02:00
Loïc Hoguin
d799215d0d psu_proto: Move all existing object actions to events. 2010-08-25 01:42:37 +02:00
Loïc Hoguin
83316ddf6f psu_instance: menu_prompt is in fact a sensor. Renamed it. 2010-08-24 17:21:07 +02:00
Loïc Hoguin
ecef3e3e8b psu_proto: Move chat (the one sent by the client) to events. 2010-08-23 14:45:47 +02:00
Loïc Hoguin
b52c7ccdac psu_game: Remove v2.000 support. Was only used by chat. 2010-08-23 13:45:35 +02:00
Loïc Hoguin
8dba561f45 psu_proto: Move item_description_request to events. 2010-08-23 00:10:12 +02:00
Loïc Hoguin
cf50b5a0a0 psu_proto: Move counter_party_options_request. 2010-08-22 23:08:01 +02:00
Loïc Hoguin
30b3155146 psu_game: Don't stop the instance if it doesn't exist. 2010-08-22 23:03:19 +02:00
Loïc Hoguin
c1de8254c4 psu_proto: Move counter_party_info_request to events. 2010-08-22 23:00:43 +02:00
Loïc Hoguin
4b5e83a745 psu_game: Cleanup exports and @todo comments. 2010-08-22 22:34:44 +02:00
Loïc Hoguin
468549fddf psu_proto: Move npc_shop_enter and npc_shop_leave to events. 2010-08-22 20:33:16 +02:00
Loïc Hoguin
851db3f046 psu_proto: Move npc_shop_request, lumilass_options_request, ppcube_request, player_type_availability_request to events. Fix a few issues with npc_shop_request. 2010-08-22 19:15:08 +02:00
Loïc Hoguin
46fabad441 egs_user_model: Remove the unused counterid introduced earlier today. 2010-08-21 18:42:23 +02:00
Loïc Hoguin
e4b2ab8a75 psu_proto: Move counter_options_request to events. 2010-08-21 18:39:15 +02:00
Loïc Hoguin
cfb14d9901 psu_proto: Move counter_quest_options_request to events. 2010-08-21 18:16:21 +02:00
Loïc Hoguin
98b2e2ba3a psu_proto: Move mission_abort to events. 2010-08-21 18:08:32 +02:00
Loïc Hoguin
efa743a465 psu_proto: Move lobby_transport_request to events. 2010-08-21 17:59:59 +02:00
Loïc Hoguin
435e075680 psu_proto: Move counter_quest_files_request to events. 2010-08-21 17:42:31 +02:00
Loïc Hoguin
e275cc2c34 psu_proto: Move mission_start to events. 2010-08-21 17:24:38 +02:00
Loïc Hoguin
647bd40b41 psu_game: Remove an obnoxious log. 2010-08-21 17:08:59 +02:00
Loïc Hoguin
dd6a44ef7f psu_proto: Move npc_invite to events. 2010-08-21 17:08:21 +02:00
Loïc Hoguin
13ace4082f psu_proto: Move counter_leave to events. 2010-08-21 16:59:01 +02:00
Loïc Hoguin
3ee62e81e8 psu_proto: Move counter_enter to events. Handle prev_area correctly. Handle CounterID correctly. 2010-08-21 16:53:35 +02:00
Loïc Hoguin
fcb3f4d055 psu_proto: Move area_change to events. 2010-08-21 15:40:17 +02:00
Loïc Hoguin
fb07769e44 psu_proto: Move player_death, player_death_return_to_lobby and player_type_capabilities_request to events. 2010-08-21 00:28:02 +02:00
Loïc Hoguin
5672d40ca9 psu_proto: Move unicube_request and unicube_select to events. Now handle EventID on select. 2010-08-20 23:22:24 +02:00
Loïc Hoguin
b29b05546a psu_parser: A few fixes to make it run on Windows. 2010-08-20 22:40:44 +02:00
Loïc Hoguin
6dd159dc1e psu_proto: Clean parsing separation. Handle events rather than packets.
Lou can now equip a wepon.
2010-08-19 23:43:19 +02:00
Loïc Hoguin
f6305c3c76 Renamed egs_proto into psu_proto. 2010-08-19 01:53:18 +02:00
Loïc Hoguin
18a86f9c6b Initial party and NPC support. Lou only so far. Many bugs expected. 2010-08-16 18:31:01 +02:00
Loïc Hoguin
c4109a5d11 psu_instance: menu_prompt has a target id. 2010-08-13 23:56:36 +02:00
Loïc Hoguin
26ed4cbf54 Remove egs_db. Rename the ids table to counters. Update it directly. 2010-07-31 21:32:08 +02:00
Loïc Hoguin
7b542e1dda psu_game: Move the room packets into their own functions. 2010-07-31 18:28:31 +02:00
Loïc Hoguin
d3ba85a8c3 psu_game: Handle the list of universes properly. 2010-07-31 18:04:39 +02:00
Loïc Hoguin
859cd1aad2 psu_game: Small improvements for future NPC invite code. 2010-07-31 15:20:25 +02:00
Loïc Hoguin
cc5b621e35 psu_game: Correctly check for the return value of ssl_accept. Also enable reuseaddr. 2010-07-31 13:55:54 +02:00
Loïc Hoguin
7025a89cee Move a few PSU-only files into the psu folder. 2010-07-31 13:45:49 +02:00
Loïc Hoguin
8495048240 psu_game: Remove boring blank lines. 2010-07-30 23:05:13 +02:00
Loïc Hoguin
b3bcdad6ca psu_game: Add code to add an NPC to the party (forced and from menu). NPC doesn't appear yet. 2010-07-30 22:09:30 +02:00
Loïc Hoguin
e70bb0cc3b psu_game: Add an NPC header file to generate the NPC list. 2010-07-30 19:31:31 +02:00
Loïc Hoguin
42a8964069 psu_parser: Add a new object. 2010-07-27 14:02:50 +02:00
Loïc Hoguin
fa621c2a42 psu_parser: Replace a unix command call by its erlang equivalent. 2010-07-26 23:39:15 +02:00
Loïc Hoguin
64a69cd952 maps: Added Airboard Rally. Initial vehicles support. 2010-07-26 19:37:50 +02:00
Loïc Hoguin
9da8fc19a8 psu_parser: Named a few unknown objects. 2010-07-25 00:56:34 +02:00
Loïc Hoguin
e10b871c08 psu_parser: Rename hidden_minimap_section into colored_minimap_section. 2010-07-24 21:52:11 +02:00
Loïc Hoguin
3e97dd50a3 psu_parser: Make it work on all zone files, even lobbies. Many unknowns. 2010-07-24 21:50:43 +02:00
Loïc Hoguin
acb3affefe maps: Added Gifts from Beyond+. Mostly non-working. 2010-07-24 18:27:33 +02:00
Loïc Hoguin
761f053ade psu_game: Don't try to load a set file that doesn't exist. 2010-07-24 12:51:51 +02:00
Loïc Hoguin
d62a6bdacd psu_instance: Add floor_button to make MAG' work better. Fix TargetID issues.
Temporarily disable the Dark God boss zone files because they're wrong in the data.
2010-07-24 00:53:01 +02:00
Loïc Hoguin
473f7f1ae6 Added psu_instance, a process to handle missions and more later. 2010-07-23 21:46:03 +02:00
Loïc Hoguin
1b9d275b83 psu_missions: Added MAG', which doesn't work. 2010-07-20 18:08:31 +02:00
Loïc Hoguin
10d1f4f85b psu_game Improve exit handling. 2010-07-20 10:15:19 +02:00
Loïc Hoguin
04265d71dc egs_user_model: Authenticated users shouldn't be cleaned up. 2010-07-20 01:38:00 +02:00
Loïc Hoguin
f86aeb8f17 psu_game: Disable character creation validation temporarily. 2010-07-19 20:45:09 +02:00
Loïc Hoguin
cd6766dbc6 psu_missions: Added The Dark God. 2010-07-19 19:27:12 +02:00
Loïc Hoguin
1677cb726c Added a few info reports when starting processes. 2010-07-19 12:38:12 +02:00
Loïc Hoguin
f40d271226 Remove egs_cron, use a timer in egs_user_model for cleaning up. 2010-07-19 12:10:35 +02:00
Loïc Hoguin
bc66480d8e Move the db user code into its own gen_server, egs_user_model. 2010-07-19 02:11:31 +02:00
Loïc Hoguin
ac4a19dab9 Use a timer instead of egs_cron for keepalive packets. 2010-07-18 17:54:28 +02:00
Loïc Hoguin
5109ccf337 Separate the game process exit monitoring into its own general-purpose module. 2010-07-18 15:41:26 +02:00
Loïc Hoguin
ef9b3aa03b Converted the game server into a supervisor-compatible module. 2010-07-18 14:08:11 +02:00
Loïc Hoguin
b85826c06a Convert the login server to a supervisor-compatible module. 2010-07-18 12:54:59 +02:00
Loïc Hoguin
982b821415 Use mochiweb's reloader module for automatic code reloading. 2010-07-18 11:48:26 +02:00
Loïc Hoguin
37a5811135 Convert the patch server to a supervisor-compatible module. 2010-07-18 11:11:39 +02:00
Loïc Hoguin
f46ba0e1f9 Start work on making the EGS server OTP-compliant. Add egs_app and egs_sup. 2010-07-18 01:44:19 +02:00
Loïc Hoguin
49016cafaa psu_missions: Added The Black Nest. Slightly better traps handling.
Not much is working there though.
2010-07-17 19:05:29 +02:00
Loïc Hoguin
a6184ed532 psu_missions: Handle small spawns object. Fix DS b3/4 and SA b3. 2010-07-17 15:34:49 +02:00
Loïc Hoguin
1f9ac7b1f6 psu_missions: Add True Darkness. Boss gate handling. Boss partially working. 2010-07-17 14:50:03 +02:00
Loïc Hoguin
f46b276047 maps: Added SEED Awakening. 2010-07-16 22:57:48 +02:00
Loïc Hoguin
d54d77ed01 game: Save the right coordinates when receiving movement, as seen in send_0503. 2010-07-16 18:49:15 +02:00
Loïc Hoguin
c258833714 psu_missions: Fix warp object handling. 2nd warp in Dark Satellite B2 now works. 2010-07-16 18:48:02 +02:00
Loïc Hoguin
db3a10188b psu_missions: Handle warps. Correctly handle coords, direction. Add Dark Satellite.
Currently only Dark Satellite B1 and B2 work.
There might be a regression about the sit state of others when connecting.
2010-07-16 16:25:31 +02:00
Loïc Hoguin
9546237ea5 psu_missions: Add Fight for Food, fix key handling for gates with N>1 keys and many gates per block. 2010-07-15 13:00:06 +02:00
Loïc Hoguin
51c2c1ad3e psu_parser: Generate missions data when compiling the server.
Currently generates the mission data for all Unsafe Passage quests.
2010-07-14 19:31:27 +02:00
Loïc Hoguin
4a043ba91d game: Revive the player on death. Like scapes, except no scape available. 2010-07-10 22:27:59 +02:00
Loïc Hoguin
11d8188893 game: Send the player back to lobby on death+red screen. Better 0111 handling. 2010-07-10 22:18:28 +02:00
Loïc Hoguin
5f4a1f8877 game: Fix 3rd Unsafe Passage C block 2 and 3! 2010-07-10 21:34:59 +02:00
Loïc Hoguin
457926fea5 game: Delete another useless io:format. 2010-07-09 21:26:59 +02:00
Loïc Hoguin
4aacaa6913 game: Default brightness set to 4. 2010-07-09 20:40:44 +02:00
Loïc Hoguin
8b9de54a7a psu_appearance: Fix eye color validation for metal heads. 2010-07-09 20:37:09 +02:00
Loïc Hoguin
8e3086832f psu_missions: Supprime un io:format inutile. 2010-07-09 19:40:53 +02:00
Loïc Hoguin
43d2516d02 psu_missions: Initial objects and proper missions handling. See below.
* Create objects in the memory database.
* Enemies aren't created in the database yet.
* Player now has its HP working correctly.
* Boxes are now destroyed.
* Temporarily set the initial spawn point to the LL counter.
2010-07-09 18:59:14 +02:00
Loïc Hoguin
80fb6573de db: Remove an useless call. The server can now start without an fclean. 2010-07-09 10:54:00 +02:00
Loïc Hoguin
86d50bb2c7 characters: Fix issues when loading idle characters. 2010-07-02 23:12:46 +02:00
Loïc Hoguin
64457ce2ad game: Add send_0210 (send current unix timestamp). 2010-07-02 20:06:13 +02:00
Loïc Hoguin
7dd80e0faf characters: Small findings and improvements. TNL currently broken though. 2010-07-02 19:15:45 +02:00
Loïc Hoguin
3ccea942cd characters: add TNL. game: add 010d command. 2010-07-02 02:43:10 +02:00
Loïc Hoguin
f4e8300fb1 game: Initial EXP support. 2010-07-01 22:47:02 +02:00
Loïc Hoguin
1ea1009a37 game: Initial support for character stats and other information. 2010-07-01 21:26:26 +02:00
Loïc Hoguin
14c9ab7666 psu_characters: Parse and validate character options. 2010-06-30 18:02:00 +02:00
Loïc Hoguin
c894ebe84a game: Fix warping and rename some related variables. 2010-06-30 14:02:52 +02:00
Loïc Hoguin
0e05b01ce5 game: Save the GID before the "auth success" log. 2010-06-30 12:11:50 +02:00
Loïc Hoguin
b85c189279 game: Fix and strenghten the supervisor.
When closing the connection, delete from the database sooner rather than later.
Do most of what we can in process_init rather than accept.
Link to the supervisor directly from the process_init function.
2010-06-30 12:09:02 +02:00
Loïc Hoguin
c4e2dccb97 psu_appearance: Parse and validate character creation appearance data. 2010-06-30 02:52:53 +02:00
Loïc Hoguin
7cda96f7e0 game: Make send_0c08 use booleans rather than ok/error. 2010-06-28 12:36:56 +02:00
Loïc Hoguin
3b2ed1c242 game: Remvoe send_spawn. 2010-06-28 12:10:31 +02:00
Loïc Hoguin
a8c88776f8 game: Add an header function to create the packet header. 2010-06-28 02:22:42 +02:00
Loïc Hoguin
7ac9776f30 game: Add CSocket, GID and Version into the process dictionary. 2010-06-28 01:33:31 +02:00
Loïc Hoguin
be0aedc62e game: The universe name now uses a string instead of integers... 2010-06-27 22:07:03 +02:00
Loïc Hoguin
e063590094 game: Use pattern match instead of many lines of binding variables in send_0201. 2010-06-27 20:03:35 +02:00
Loïc Hoguin
9d130db310 game: Pattern match the command header only once. 2010-06-27 19:59:16 +02:00
Loïc Hoguin
0b8ecb3971 game: Remove the temporary code for improvised Sonic's Birthday event. 2010-06-27 19:11:09 +02:00
Loïc Hoguin
f3d5b5f099 game: Use pattern matching to simplify build_0233_contents. 2010-06-27 18:59:27 +02:00
Loïc Hoguin
cd30e60262 game: Remove a bunch of useless @todo. 2010-06-21 03:51:35 +02:00
Loïc Hoguin
58041fa3e2 game: Handle different enemy layouts. 2010-06-19 23:54:58 +02:00
Loïc Hoguin
10eb51f7c4 game: Better weapon equip handling. Mostly temporary though. 2010-06-19 22:04:42 +02:00
Loïc Hoguin
95bf192071 game: Sonic's Birthday event code. Mostly temporary for now. 2010-06-18 19:51:46 +02:00
Loïc Hoguin
243a22058c game: Add crystal event number. 2010-06-18 18:57:10 +02:00
Loïc Hoguin
370a5488b8 game: Initial mission events, keys, crystals support.
Some values are hardcoded for now. This enables the first block of the
3rd Unsafe Passage layout. Missions are mostly figured out but will require
more work to make them work everywhere.
2010-06-18 18:33:13 +02:00
Loïc Hoguin
46cf099949 game: Fix season date, Easter had 22 days instead of 21. 2010-06-17 12:35:47 +02:00
Loïc Hoguin
b89519c58a game: Add initial seasons support, triggered automatically according to the current UTC date. 2010-06-17 04:03:48 +02:00
Loïc Hoguin
3ac49e431e game: Don't validate 0503 so tightly, prevent wrongful disconnects. 2010-06-17 01:57:11 +02:00
Loïc Hoguin
55cd90530f game: Print ignored action for 0105 handler. 2010-06-14 16:36:53 +02:00
Loïc Hoguin
276b6431b6 game: Ignore type change until characters are handled. 2010-06-14 16:20:45 +02:00
Loïc Hoguin
704996a302 game: Remove player_unspawn, use send_0204 directly until more is known. 2010-06-14 16:16:13 +02:00
Loïc Hoguin
8017f2fc79 game: Handle item descriptions. 2010-06-14 15:53:51 +02:00
Loïc Hoguin
214350b033 game: Improved object event handler. 2010-06-14 15:38:57 +02:00
Loïc Hoguin
16bbe2e308 game: Make sure the supervisor process doesn't die. 2010-06-13 23:45:30 +02:00
Loïc Hoguin
02983da6f7 game: Initial type menu handling. 2010-06-13 23:42:56 +02:00
Loïc Hoguin
dd26d4f1e5 game: Fix permanent ghosts. Supervisor cleans up after crashes and normal exits. 2010-06-13 19:05:28 +02:00
Loïc Hoguin
81f04979d4 game: Small consistency change in chat. 2010-06-13 12:15:58 +02:00
Loïc Hoguin
ccec120037 game: Ignore the name sent by client chat commands. Use the db one always. 2010-06-13 03:46:25 +02:00
Loïc Hoguin
61cd2fd64f game: Force reloading the character when changing uni. 2010-06-13 03:38:25 +02:00
Loïc Hoguin
8d119e1934 game: Consolidate myroom_load into area_load. See below.
* Remove myroom_load.
* Add room map information to the maps include.
* Add the beginning of the tutorial to check changes correctness.
* Reload characters all the time when entering or leaving the room quest.
2010-06-12 21:26:37 +02:00
Loïc Hoguin
a4a2eb3c8b game: Move the counter command replies into their own functions. 2010-06-11 17:42:58 +02:00
Loïc Hoguin
e6297c4d6d game: Small improvements for the transport reply. 2010-06-11 17:17:51 +02:00
Loïc Hoguin
2eb80c2edf game: Cleanup the 0c01 reply into their own functions. 2010-06-11 16:55:32 +02:00
Loïc Hoguin
2aa4d317e2 game: Move counter command replies into their own functions. 2010-06-11 16:41:23 +02:00
Loïc Hoguin
1327ab5b9f game: Separate the dialog commands into their own send functions. 2010-06-11 16:34:46 +02:00
Loïc Hoguin
4d867449a4 game: Add number of players to the universe cube. 2010-06-11 01:02:46 +02:00
Loïc Hoguin
a0442e1139 game: Correctly handle mission aborting. Warp the player OUT. 2010-06-11 00:34:55 +02:00
Loïc Hoguin
8a94ae7771 game: Use the existing 1006 function for abort mission.
Also remove an already done @todo.
2010-06-10 22:50:32 +02:00
Loïc Hoguin
5c71263d0c Don't assume we know the protocol. Use send_xxxx with xxxx the command instead of attempts at real function names. 2010-06-10 19:34:43 +02:00
Loïc Hoguin
779125d2c5 game: Consolidate mission_load into lobby_load, renamed to area_load. 2010-06-09 18:58:44 +02:00
Loïc Hoguin
fcc249589d game: Fix crash when going from mission to lobby. 2010-06-09 00:10:26 +02:00
Loïc Hoguin
f8b6f01dde game: Don't resend quest or zone files when they didn't change.
This fixes the lack of weapons and enemies when reaching B2 in a mission.
2010-06-08 21:52:13 +02:00
Loïc Hoguin
82c08317f6 game: Improved mission start handling. 2010-06-08 19:09:54 +02:00
Loïc Hoguin
9807ceda46 game: Separate character loading from room loading. 2010-06-08 17:21:25 +02:00
Loïc Hoguin
88996760f1 game: Rename char_load to data_load. 2010-06-08 17:04:54 +02:00
Loïc Hoguin
1cc1164656 maps: Add all the colony counters. 2010-06-07 01:16:37 +02:00
Loïc Hoguin
ec065686bd game: Fix counter loading with different backgrounds. Add 5th floor counter. 2010-06-06 20:13:59 +02:00
Loïc Hoguin
b6c000dd4f game: Save the questid and zoneid when entering a counter. 2010-06-06 03:23:51 +02:00
Loïc Hoguin
36304a5554 maps: Separate the concept of quests, zones and maps. 2010-06-06 03:10:53 +02:00
Loïc Hoguin
8ac0e60d2f Rename location identifiers appropriately: QuestID, ZoneID, MapID and EntryID. 2010-06-06 02:28:35 +02:00
Loïc Hoguin
c7f356142b game: Simplify counter handling. 2010-06-06 02:05:35 +02:00
Loïc Hoguin
d4622e29e2 game: Add space docks counter. Fix loading of other counters than LL. 2010-06-06 01:51:18 +02:00
Loïc Hoguin
43b4f6b263 game: Counter options are data and should be separated (mission visible/not). 2010-06-05 20:27:07 +02:00
Loïc Hoguin
b1f76e4bc8 game: Correct lobby pack file selection support.
This makes all other counters disconnect you because they don't exist!
2010-06-05 18:15:40 +02:00
Loïc Hoguin
b8baa0d461 game: Correct handling for command 0c06. 2010-06-05 17:57:48 +02:00
Loïc Hoguin
78a0830a7d game: Mission loader now send packets 0215. 2010-06-05 13:20:51 +02:00
Loïc Hoguin
33145b3c8c game: Consolidate spaceport_load into lobby_load. 2010-06-05 13:11:17 +02:00
Loïc Hoguin
b54b867907 game: Add command 0a06 to spaceport loading. 2010-06-05 12:51:57 +02:00
Loïc Hoguin
1d0ba967b5 game: Initial mission start (for real) and abort support. 2010-06-05 12:46:04 +02:00
Loïc Hoguin
006ac0a9c0 game: Enable flags and make lobby transport work.
Flags will have to be checked individually and handled correctly later.
2010-06-05 03:28:30 +02:00
Loïc Hoguin
190d79777c game: Add working Leave Counter function. Also fix leaving Lumilass. 2010-06-05 02:25:51 +02:00
Loïc Hoguin
ca250eb246 game: Add reply to command 170b with sane values. 2010-06-05 01:42:32 +02:00
Loïc Hoguin
7d38ce4d01 game: Add 0a06 to counter loading and add a note in a @todo in proto. 2010-06-05 01:22:38 +02:00
Loïc Hoguin
0c6c56fcae game: Counter and missions now send packets 1202 1204 1206 and 1207. 2010-06-05 01:15:50 +02:00
Loïc Hoguin
204ac86b9d game: Send commands 0215 when loading counters. 2010-06-04 23:14:54 +02:00
Loïc Hoguin
7e67dfbc6d game: Counter doesn't seem to send the location IDs.
This makes Leave Counter send a command 0812, which is halfway fixing it.
2010-06-04 23:02:45 +02:00
Loïc Hoguin
f93b469b64 game: Zone initialisation packet 0200 is same for counters and missions. 2010-06-04 22:34:12 +02:00
Loïc Hoguin
cda5b51597 game: Add command 0230 when using the uni cube. 2010-06-04 21:05:04 +02:00
Loïc Hoguin
3b9d546fc4 game: Room got broken after a previous change, fix it back. 2010-06-04 20:29:56 +02:00
Loïc Hoguin
b758c6a5d5 proto: Conformance for 0236. 2010-06-04 19:51:31 +02:00
Loïc Hoguin
945217010e proto: Conformance for send_loading_end, 0208. 2010-06-04 19:49:52 +02:00
Loïc Hoguin
fe126f4bb5 game: Add a @todo. 2010-06-04 19:46:17 +02:00
Loïc Hoguin
a2ffa3adb6 proto: Fix 1212 for conformance. 2010-06-04 19:42:58 +02:00
Loïc Hoguin
c9f75dfd29 game: Add 020c to area changes. 2010-06-04 19:36:56 +02:00
Loïc Hoguin
91d6426722 proto: Add a @todo. 2010-06-04 19:29:56 +02:00
Loïc Hoguin
11a15f6d90 proto: Fix send_map for conformance. It doesn't need the quest id either. 2010-06-04 19:21:59 +02:00
Loïc Hoguin
7e17c02ad3 proto: Fix send_zone (020f) for conformance. 2010-06-04 18:55:16 +02:00
Loïc Hoguin
0ddb729e09 game: Add command 0111 on area changes. 2010-06-04 18:44:41 +02:00
Loïc Hoguin
8835c9928b game: Add command 0a05 to area loading. 2010-06-04 18:30:57 +02:00
Loïc Hoguin
6d699a22e9 proto: Update send_quest for conformance. 2010-06-04 18:25:17 +02:00
Loïc Hoguin
4994f6e161 game: Add command 021b at character loading. 2010-06-04 18:02:26 +02:00
Loïc Hoguin
e5dc6f82ee proto: Commands 021b and 021c aren't keepalive. Just send an empty packet for now. 2010-06-04 17:56:18 +02:00
Loïc Hoguin
37a5a5a944 game: Send an empty blacklist too. 2010-06-04 17:02:13 +02:00
Loïc Hoguin
df451b843b game: Explicitly send an empty partner card list. 2010-06-04 16:53:32 +02:00
Loïc Hoguin
2c025532b7 proto: Better conformance for command 1500. 2010-06-04 16:47:42 +02:00
Loïc Hoguin
570c8eaf73 game: Small conformance change to 0222. 2010-06-04 16:35:56 +02:00
Loïc Hoguin
73e8a1d575 game: Small conformance change to 1006. 2010-06-04 16:32:34 +02:00
Loïc Hoguin
8128ea20da game: Add initial packet 1006 handling to character loading. 2010-06-04 16:25:38 +02:00
Loïc Hoguin
67913401dc proto: Small fixes on character selection to be closer to the PSU protocol. 2010-06-04 16:06:35 +02:00
Loïc Hoguin
2f4bd53b44 game: Don't reload the character everytime a lobby is entered. 2010-06-04 15:01:04 +02:00
Loïc Hoguin
66616e1692 game: Add missing @doc. 2010-06-04 12:23:28 +02:00
Loïc Hoguin
2dc9d30660 proto: Remove parse_chat. 2010-06-04 12:18:12 +02:00
Loïc Hoguin
8aa3a9f2e0 proto: Remove parse_options_change. 2010-06-04 12:08:10 +02:00
Loïc Hoguin
529dc5cf08 proto: Remove parse_lobby_change. 2010-06-04 12:07:30 +02:00
Loïc Hoguin
9d2115fa3d proto: Remove parse_game_auth. 2010-06-04 12:04:37 +02:00
Loïc Hoguin
e151343737 proto: Remove parse_character_select. 2010-06-04 12:03:37 +02:00
Loïc Hoguin
6d98ce6d73 proto: Remove parse_character_create. 2010-06-04 12:02:10 +02:00
Loïc Hoguin
b2cd15d055 proto: Fix send_npc_info, schoolboy error. 2010-06-04 11:36:52 +02:00
Loïc Hoguin
f41935dae2 proto: Remove parse_platform_info. 2010-06-04 11:26:22 +02:00
Loïc Hoguin
1db610f42e proto: Remove parse_uni_select. 2010-06-04 11:23:15 +02:00
Loïc Hoguin
2afaa28c05 proto: Send all working NPCs cards to everyone. 2010-06-04 02:03:43 +02:00
Loïc Hoguin
dd743a9b6d proto: Remove a write_file leftover. 2010-06-04 00:52:30 +02:00
Loïc Hoguin
e2e4a1411b game: Remove a done @todo. 2010-06-04 00:24:15 +02:00
Loïc Hoguin
152da2848e game: Silently ignore 0b05 in dispatch rather than in its own handler. 2010-06-04 00:10:54 +02:00
Loïc Hoguin
92f1d15729 game: Rename all source packet variables to Orig. Packet is for output. 2010-06-04 00:09:08 +02:00
Loïc Hoguin
86fb4486ba game: Silently ignore packet 0818 (CPU/GPU information). 2010-06-03 23:45:06 +02:00
Loïc Hoguin
43b4c3d5a4 game: Improved log function. 2010-06-03 23:36:34 +02:00
Loïc Hoguin
32f7afb53e login: Ignore commands 0227 and 080e silently. 2010-06-03 23:04:38 +02:00
Loïc Hoguin
c394b20ee0 login: Improved log function. 2010-06-03 23:00:10 +02:00
Loïc Hoguin
8ffc8f2069 login: Move all parsing functions out of proto and do it inline for clarity. 2010-06-03 22:53:34 +02:00
Loïc Hoguin
652ee58c13 proto: Remove send_hello, do it inline. 2010-06-03 20:25:52 +02:00
Loïc Hoguin
56a669af45 game: Add a quest initialization packet. 2010-06-03 20:15:10 +02:00
Loïc Hoguin
b8251346b2 proto: Send flags just like on the official servers. 2010-06-03 19:25:18 +02:00
Loïc Hoguin
e6bc6ca32b game: Ignore counter's mission selected command. Fix a @doc. 2010-06-02 20:49:19 +02:00
Loïc Hoguin
1eb5e76a0a game: Initial dialog handling. PP cube, Lumilass, items shops start working. 2010-06-02 20:05:50 +02:00
Loïc Hoguin
6aa598eacb game: Add a @todo, fix a @doc. 2010-06-02 12:56:33 +02:00
Loïc Hoguin
6f06dff85a game: Handle area separation correctly. Handle unspawn, fixing temporary ghosts. 2010-06-01 23:40:32 +02:00
Loïc Hoguin
9acdef78c8 game: Initial party support. Party name = charname, drops = random. 2010-06-01 20:26:42 +02:00
Loïc Hoguin
fb85a123ad game: Handle more than 1 hit per hit command. 2010-06-01 20:11:22 +02:00
Loïc Hoguin
8a12b7ed36 game: Improve weapon equip/unequip handling. Handle melee half-correctly. 2010-06-01 20:11:02 +02:00
Loïc Hoguin
e427bcb478 game: Ignore fragmented packet received notice. 2010-05-31 21:58:20 +02:00
Loïc Hoguin
1bdc71ced3 game: Fix crashes related to missions. Don't broadcast if not in the same instance. 2010-05-31 21:15:39 +02:00
Loïc Hoguin
3ec9f898fe game: Send character's location (party member location) on area load. 2010-05-31 18:56:38 +02:00
Loïc Hoguin
e6063333ca game: Initial damage handling. A default inventory is given. 2010-05-31 18:50:24 +02:00
Loïc Hoguin
4ae86af79a game: Initial mission and mission counter support. 2010-05-31 18:24:26 +02:00
Loïc Hoguin
30026b221a game: No need to restrict that much what can be in unused packet variables.
Doing so causes errors to some people sometimes.
2010-05-26 17:11:11 +02:00
Loïc Hoguin
8ab19a6094 game: Nevermind. 2010-05-26 11:45:33 +02:00
Loïc Hoguin
0045422a1b game: Fix room map type from uni cube. 2010-05-26 11:38:17 +02:00
Loïc Hoguin
32f4a0b987 game: Channel must not be changed when broadcasting. 2010-05-26 11:27:51 +02:00
Loïc Hoguin
5fc0bf0741 game: Consolidate broadcasting according to what is known so far. 2010-05-26 11:02:18 +02:00
Loïc Hoguin
4466c77ec5 game: Consolidate command 0503 parsing to prevent tampering as much as possible. 2010-05-26 10:48:42 +02:00
Loïc Hoguin
7e32314760 game: Save coordinates for the stand still command too. 2010-05-26 10:10:14 +02:00
Loïc Hoguin
5ecdd5d4c9 game: Implement character direction. 2010-05-26 09:55:55 +02:00
Loïc Hoguin
0353915b20 game: Fix a small conflict in packet dispatch.
0b05 ignores the channel and could sometimes send 1, disconnecting the player.
2010-05-26 05:35:31 +02:00
Loïc Hoguin
d575eae402 game: Limit broadcasting to the allowed commands.
Commands that can broadcast are 0101 0102 0104 0107 010f 0503 050f 0514.
2010-05-25 23:09:08 +02:00
Loïc Hoguin
dd4bb5f520 game: Lobby ID shouldn't be allowed to be 0 yet, otherwise conflicts occur. 2010-05-25 22:24:43 +02:00
Loïc Hoguin
2a84dd529a game: The lobby ID apparently can't be 1024 and above. 2010-05-25 22:10:14 +02:00
Loïc Hoguin
757523ca03 game: Initial Your Room work. Loads someone else's room.
This removes the club from the uni cube, and fix the room doors at GC1.
2010-05-25 08:50:08 +02:00
Loïc Hoguin
21823c3f58 game: Replace newlines by space when printing the chat messages. 2010-05-24 13:52:45 +02:00
Loïc Hoguin
f9a61af2dc Don't need a + in replace regexpes since they're global. 2010-05-24 13:49:00 +02:00
Loïc Hoguin
dd0162458b game: Print chat messages. 2010-05-24 13:41:06 +02:00
Loïc Hoguin
52d6bccc5f game: Print the flag being handled. 2010-05-24 13:30:36 +02:00
Loïc Hoguin
89e2214ba7 game: Stub mission counter handler. 2010-05-24 13:10:05 +02:00
Loïc Hoguin
e443bf790a proto: Remove a value that makes no sense and seems unused. 2010-05-24 12:16:13 +02:00
Loïc Hoguin
1da6ac4847 maps: Add all known and used lobbies on all planets.
All GC and Parum are available. Neudaiz and Moatoob are main city only.
Parum GUARDIANS and GRM aren't working properly yet but the map loads fine.
2010-05-24 11:25:20 +02:00
Loïc Hoguin
48ba723e8c Make spaceport work as expected. Add Neudaiz main lobby. 2010-05-22 22:52:08 +02:00
Loïc Hoguin
c0fdfd7a26 Add single-person warp function. 2010-05-22 08:17:09 +02:00
Loïc Hoguin
778eddc298 maps: Add spaceport files. Only choice is GC 1st floor though. Odd. 2010-05-22 07:26:02 +02:00
Loïc Hoguin
8f19afac83 game: Change map info display format when calling log. 2010-05-22 06:39:39 +02:00
Loïc Hoguin
6e125f273b game: Fake flags handler for now. Should fix the delay issues. 2010-05-22 04:55:30 +02:00
Loïc Hoguin
888968ff76 maps: Add the club. 2010-05-22 04:12:47 +02:00
Loïc Hoguin
e4bad33910 Handle map type properly. 2010-05-22 03:59:19 +02:00
Loïc Hoguin
3a0bcd56b8 game: Reworked the maps array a little bit. Added a map name. 2010-05-21 13:40:01 +02:00