Commit Graph

132 Commits

Author SHA1 Message Date
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 ace87b438b Began working changes into lobby 2014-11-16 23:02:06 +11:00
Kayne Ruse 1f3c1f32f4 Moved 'renderable' stuff to 'entities' 2014-11-16 22:40:13 +11:00
Kayne Ruse 4434900afc Merge branch 'unix-compat' into develop
Conflicts:
	todo.txt
2014-10-19 05:53:09 +11:00
Kayne Ruse e488b15acc Corrected the libs order in the root makefiles
The calls to ConfigUtility::Load() also received some tweaks, to use '/'
instead of '\' for unix compatability. Also removed -llua from graphics
makefile.
2014-10-19 05:40:48 +11:00
fro_ozen de7167e830 Added unix compatability 2014-10-18 20:10:17 +02: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 f3073efa39 Renamed clean_up.*pp to disconnected_screen.*pp 2014-10-10 06:35:50 +11:00
Kayne Ruse 1761134839 Added LocalCharacter & BaseMonster 2014-10-10 06:32:53 +11:00
Kayne Ruse 7c4762852b Moved Renderable and Character into Renderable/ 2014-10-10 06:18:50 +11:00
Kayne Ruse 8dcd02aba3 Separated some character code into Renderable 2014-10-10 06:00:58 +11:00
Kayne Ruse 76206a1146 Minor fix 2014-10-04 19:09:37 +10:00
Kayne Ruse be9ce33637 Changed a bunch of method names, including Singleton<> 2014-10-01 01:57:03 +10:00
Kayne Ruse 87ef03d512 Moved the debug island into a module 2014-09-30 00:44:54 +10:00
Kayne Ruse e452f2ecfc Moved sql_utility.*pp to server/ directory
Also padded setup_server.sql's formatting, for readability.
2014-09-28 03:42:16 +10:00
Kayne Ruse 59e3518dd8 Implemented command line config overrides
You can set the file to read as the config file via the command line, like
this, assuming the program supports it:

  prog -config=file.cfg

You can also override indevidual key-value pairs in the config system
using this syntax:

  prog -Ckey=value

Both commands can be used together, and you can override multiple
key-value pairs at once. To use this feature of the ConfigUtility, it must
receive argc and argv as parameters to the Load() method.
2014-09-28 02:11:26 +10:00
Kayne Ruse 411687b41c Added a proper disconnection message by hacking the config 2014-09-10 17:35:12 +10:00
Kayne Ruse ad2c65dc67 Remeved the commented BUGFIX tags 2014-09-10 17:00:13 +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 2c06232264 JOIN_REJECTION works, ready for the rest 2014-09-09 08:39:36 +10:00
Kayne Ruse 4c882682ed Added TextPacket 2014-09-09 08:05:50 +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 5536bf366d Implemented the serialization switch statement 2014-08-31 15:35:14 +10:00
Kayne Ruse 094efad728 Rearranged the packet and serial code to make more sense
This mostly just reimplements the best parts of the discarded branch:

> discard-encapsulated-packets

There may still be some work needed.
2014-08-31 13:24:53 +10:00
Kayne Ruse 6f4334f84d Moved serialization globals 2014-08-25 00:07:17 +10:00
Kayne Ruse 5dea53ad50 Removed delta time system from the framework 2014-08-19 02:52:15 +10:00
Kayne Ruse f52a022e64 Bugfixes, read more
* Manual modifications to the database caused the map to act unusual
* The server's packet must be created and deleted as a char array
* removed UnloadAll() from several singleton destructors
* added SDL_Delay() to BaseScene::RenderFrame(), to reduce heavy CPU use in menus
2014-08-19 01:48:48 +10:00
Kayne Ruse 0fdaa90a83 Minor code tweaks 2014-08-17 11:46:02 +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 908f91d674 ClientApplication and ServerApplication are now Singletons 2014-08-04 00:45:09 +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 414a0896c9 Began merging the jam branch into the development (read more)
The list of changes committed:

* Removed SimpleRNG
* Added Timer (for debugging)
* Added BoundingBox
* Added floating point snapToBase()
* Added error check to Vector2::Normalize()
* Updated makefiles, project compiles
2014-07-30 21:10:43 +10:00
Kayne Ruse e946a0741d Encapsulated the Character class 2014-07-04 00:55:12 +10:00
Kayne Ruse f70241cc57 Merge branch 'config' into rebuild 2014-07-03 02:17:44 +10:00
Kayne Ruse 36d30ce39b Moved the scenes into a subdirectory 2014-07-03 02:01:53 +10:00
Kayne Ruse 28d083cba4 Hammered out server-side issues, read more
* Removed the client-only code from CharacterData, including the .cpp file
* Removed CombatManager and EnemyManager instanciation
2014-07-03 01:41:58 +10:00
Kayne Ruse 4dd4b37fc0 It now builds cleanly, but I cut a few code stubs 2014-07-03 00:56:30 +10:00
Kayne Ruse 82b1b589dc Moved some files around 2014-07-03 00:23:43 +10:00
Kayne Ruse bac493c96b Rearranged the debug output 2014-07-02 21:59:26 +10:00