Commit Graph

317 Commits

Author SHA1 Message Date
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