Commit Graph

78 Commits

Author SHA1 Message Date
Kayne Ruse 8708cfbee0 I give up, I'm just using the stop-dead system for now. 2014-12-27 23:16:48 +11:00
Kayne Ruse b67e85e87b Moved some messy code from InWorld::Update() to utility methods 2014-12-27 21:00:00 +11:00
Kayne Ruse f6e90d7e39 Fixed controls & hotkeys interferring; smoother logouts 2014-12-27 19:25:49 +11:00
Kayne Ruse ee0b7884a8 Partial collision (box prep) complete; untested 2014-12-27 15:05:34 +11:00
Kayne Ruse 7e5a7f8183 Updated the copyright headers about a week ahead 2014-12-27 13:29:16 +11:00
Kayne Ruse f2d517df9d BUGFIX: Infinitely small motion on an axis after repeated key release;
read more

I've patched this issue by setting motion's elements to
CHARACTER_WALKING_SPEED or negative CHARACTER_WALKING_SPEED if they're
above or below zero, respectively.
2014-12-27 12:33:51 +11:00
Kayne Ruse 6c11aa0927 Characters are moving around in the world 2014-12-27 02:26:44 +11:00
Kayne Ruse 398f1c8bfd Added a room check to the character query 2014-12-27 01:33:10 +11:00
Kayne Ruse 3e2d1a5a56 Implemented client-side HandleCharacterSet*(); untested 2014-12-22 23:09:28 +11:00
Kayne Ruse 900f623f3b Camera centering and client drop message 2014-12-19 20:33:09 +11:00
Kayne Ruse 2ae2c48819 Added LocalCharacter, removed entityIndex 2014-12-19 19:44:34 +11:00
Kayne Ruse 07af05712b Implemented client-side query 2014-12-19 18:33:41 +11:00
Kayne Ruse 7962692641 Implemented client-side character delete; untested 2014-12-19 14:21:05 +11:00
Kayne Ruse 015631a73d Implemented client-side HandleCharacterCreate 2014-12-18 09:14:11 +11:00
Kayne Ruse ae046977f0 Server state query works, client doesn't use the result yet
Both sides of this message uses QUERY_CHARACTER_EXISTS because I'm just
trying to push forward, without worrying about mistakes I might be making.
I just want to merge this back into the main branch so I can say that I've
actually done something over the last few months.
2014-12-11 08:02:38 +11:00
Kayne Ruse 72f641bf63 Server sends character create & delete messages 2014-12-11 07:12:16 +11:00
Kayne Ruse 0e666d3203 Server accepts and creates the character's data 2014-12-02 23:11:08 +11:00
Kayne Ruse cc167180f6 Added support for cleaning up after rejection messages 2014-12-01 22:33:15 +11:00
Kayne Ruse 822ff5827e Map protocol works in theory 2014-12-01 00:13:46 +11:00
Kayne Ruse 8579d7e0d6 Implemented client-side HandleRegionContent() 2014-11-30 23:29:46 +11:00
Kayne Ruse e5abd51f76 Two-step login system works perfectly; can't shut the server down
I've also removed a large amount of commented and uncommented code from
in_world.cpp, simply because so much code was dummied out. I can readd
this code as I reimeplement various features.
2014-11-26 10:14:26 +11:00
Kayne Ruse 9329274866 Project builds, but with a lot of logic dummied out 2014-11-16 23:16:21 +11:00
Kayne Ruse 40c76b4285 Implemented a few minor changes from the monster branch 2014-10-19 01:25:03 +11:00
Kayne Ruse 974effd95e Implemented DisconnectedScreen, and removed CharacterMap
Project also builds, since I went through and adjusted it. It's hacky
right now, but I just want to make sure it worked. I'll give it another
pass before merging into develop.
2014-10-10 06:54:48 +11:00
Kayne Ruse 87ef03d512 Moved the debug island into a module 2014-09-30 00:44:54 +10:00
Kayne Ruse 411687b41c Added a proper disconnection message by hacking the config 2014-09-10 17:35:12 +10:00
Kayne Ruse 712d94d3b2 Client now handles character rejections 2014-09-10 16:57:35 +10:00
Kayne Ruse 17b9eb7ad4 Added more rejection packets, revised some logic 2014-09-10 16:06:01 +10:00
Kayne Ruse f581c3238f Tweaked some TODO comments 2014-09-03 04:36:02 +10:00
Kayne Ruse 79c7e48139 UDPNetworkUtility accepts addresses by value, encapsulated ClientData
I started encapsulating ClientData, and I added the internals for the
heartbeat ssytem. However, when I took a look inside UDPNetworkUtility, I
realized that I didn't have to pass the IPaddresses by reference anymore.
Therefore, I've changed it to accept the addresses by value, and I'm
committing that change right away before I finish the heartbeat system.

This engine is really shaping up, I think.
2014-09-03 01:59:53 +10:00
Kayne Ruse 06922dc820 Client-side heartbeat is working 2014-09-03 01:21:17 +10:00
Kayne Ruse 5577387d61 Added basic hearbeat framework 2014-09-03 00:53:55 +10:00
Kayne Ruse d50cf5b91e Fixed shoddy packet typing 2014-09-03 00:45:08 +10:00
Kayne Ruse 5dea53ad50 Removed delta time system from the framework 2014-08-19 02:52:15 +10:00
Kayne Ruse b6c70cbc0d Tweaked the bounds values 2014-08-13 09:05:26 +10:00
Kayne Ruse 1776583e01 Added the escape hotkey, refined BoundingBox a bit
LobbyMenu also searches for a server as soon as you enter, so you don't
have to press an extra button, a good feature.
2014-08-13 08:08:16 +10:00
Kayne Ruse 74f809a801 UDPNetworkUtility is a singleton, disabled InCombat scene
I found incombat to be way too finicky to keep up to date, so I disabled
it for now.
2014-08-13 06:53:47 +10:00
Kayne Ruse fd320767c5 Implemented the changes to ConfigUtility in the client and server
The server's changes were easy. The clients means that the constructors
for each scene have one less argument, and each scene has one less member.
The exception to this is LobbyMenu, where the config is used in multiple
places, so it was easier to have the config's reference as a member.

To replace the config's usage, I added this line in most cases:

ConfigUtility& config = ConfigUtility::GetSingleton();

The only requirement is that ConfigUtility::Create() and
ConfigUtility::Delete() are called from the main() function.
2014-08-03 23:20:39 +10:00
Kayne Ruse 0b512305a9 Added last additions from jam (read more)
I should also mention that the client is throwing up a warning that
HandleCharacterUpdate() is passing to HandleCharacterNew().
2014-07-31 20:04:58 +10:00
Kayne Ruse 555abf9c95 Fixed the map issue (read more)
The map generation was being written to a trigger function instead of a
glue method. Fixed, map is being drawn correctly now.
2014-07-31 19:17:29 +10:00
Kayne Ruse e946a0741d Encapsulated the Character class 2014-07-04 00:55:12 +10:00
Kayne Ruse 36d30ce39b Moved the scenes into a subdirectory 2014-07-03 02:01:53 +10:00
Kayne Ruse b86d393571 Moved the scenes up one directory level, subdirs no longer needed 2014-05-27 23:28:29 +10:00
Kayne Ruse 5893342ad8 Removed the shared parameters structure (read more)
I've also stopped using a separate branch for sharing the CharacterData
structre. This commit won't build, mostly because I need to refactor
InWorld to handle the loss of the PlayerCharacter class.

I should probably rename SQL's tables too.
2014-05-27 22:27:30 +10:00
Kayne Ruse 0a71f43ef3 Implemented SharedParameters system in the client (read more)
Here are more tweaks:
* InWorld's quit event now exits to the main menu, bypassing a relayed disconnect message
* InWorld's disconnect hander no longer throws exceptions (dropped creation packet bugfix)
* CombatData's internals now point to std::pair objects
* Enemies are stored in a global list
2014-05-26 17:11:26 +10:00
Kayne Ruse 01244005e9 Minor file renaming and tweaks 2014-05-13 00:23:04 +10:00
Kayne Ruse 4d12788c53 Finished the server-side modifications (read more)
* There seems to be something iffy with this branch
* The size of SerialPacket may have changed

I've implemented the accountIndex variable as best I can, but I really
shouldn't code at night. I'll need to go over the changes again before
merging this.
2014-05-07 20:55:09 +10:00
Kayne Ruse 1beb7cbd5d Began adding basic authentication 2014-05-06 21:35:07 +10:00
Kayne Ruse 4ebff4a25a Minor tweaks, prepping for a merge 2014-05-06 19:18:53 +10:00
Kayne Ruse 124cb3ad13 Did some renaming and comment tweaks 2014-04-29 06:34:23 +10:00