157 Commits

Author SHA1 Message Date
simon
e97ecbe380 Added javadocs 2018-05-01 15:41:51 -04:00
simon
083af31b84 Fixed websocket problem by upgrading spark version. Also fixed z-index problem with console 2018-04-29 17:00:42 -04:00
simon
2c856aae80 Editor upload & reload buttons are now working. Floppy upload & download working. 2018-04-29 14:00:50 -04:00
simon
315e33055e Reorganised css files, some work on the home page design, console screen is now in a resizable panel 2018-04-29 11:17:54 -04:00
simon
e025b6d2da SSL now working and reorganised web server 2018-04-28 12:06:55 -04:00
simon
e3a650a4fc Reorganised debug info in account page and extracted user loading to UserManager 2018-04-27 21:59:07 -04:00
simon
113aa50d87 Websocket auth up and running 2018-04-27 21:28:46 -04:00
simon
dc034d1437 Users can change their password 2018-04-27 20:39:14 -04:00
simon
3492e133e1 login/register working and Websocket partially implemented 2018-04-27 19:42:53 -04:00
simon
bd5f8573e8 Added web server and partly integrated frontend 2018-04-27 16:58:50 -04:00
simon987
9349ae108b Removed some unnecessary unit tests 2018-04-02 10:58:24 -04:00
simon987
292adb5483 Updated maven version numbers. Removed .iml files 2018-04-02 10:52:36 -04:00
Luc Lagarde
a091071d55 Implement RAM corruption effect 2018-03-31 17:50:51 -05:00
simon
1d780f7d9b Minor refactor 2018-03-11 13:34:10 -04:00
simon
cbb07891fc Cubot respawns on death. ElectricBox damages near objects 2018-03-10 15:22:11 -05:00
simon
2565d3338c Implemented shield hardware. Added heal, damage and charge shield debug commands. 2018-03-10 13:54:43 -05:00
simon
e4269b83c4 Fixed hardware deserialization issues 2018-03-10 11:51:31 -05:00
simon
9cac665101 Debug commands are easier to add. Added comPortMsg command 2018-03-10 11:24:29 -05:00
simon
dc19176dc8 Merge branch 'master' into vaults
# Conflicts:
#	Server/src/main/java/net/simon987/server/game/GameObject.java
#	Server/src/main/java/net/simon987/server/game/World.java
#	Server/src/main/java/net/simon987/server/webserver/TerrainRequestHandler.java
2018-03-10 09:53:55 -05:00
simon
8ed192f8d0 Cubot implements Attackable (untested) 2018-03-10 09:49:34 -05:00
Simon Fortier
d1a3cf9307
Merge pull request #110 from djsheehy/shield-hardware
Added Shield hardware
2018-03-05 22:18:44 -05:00
simon
f8c5dac969 Added logging of vault clears for display in the leaderboard 2018-03-05 21:47:28 -05:00
simon
f35e6c5a9a Objects can enter & leave vaults 2018-03-04 14:56:02 -05:00
simon
0ada6c29d4 More work on vaults 2018-03-01 10:42:24 -05:00
simon
039088ac00 Added electric boxes, debug command to teleport objects across Worlds. 2018-02-27 16:49:32 -05:00
simon
62f1403cb3 Started working on Vault worlds generation 2018-02-26 10:04:06 -05:00
simon
8c6e580ea9 Added support for multiple dimensions 2018-02-25 14:15:03 -05:00
simon
6a1519d97d Added many debug commands 2018-02-25 11:55:53 -05:00
simon
a7d1a00ae8 Fixes #27 2018-02-25 08:51:03 -05:00
simon
95a14ad1ab Added basic functionality for debug commands 2018-02-17 10:05:53 -05:00
simon
8d961ce572 Added JA and JNA Instructions 2018-01-20 14:18:44 -05:00
simon
c772abe0bf Fixed opcode clash for PUSHF instruction 2018-01-20 12:33:01 -05:00
simon
187a828c79 Fixed opcode clash for PUSHF instruction 2018-01-20 09:40:23 -05:00
simon
ffca185fe5 Vault Door generation 2018-01-17 22:01:59 -05:00
simon
815f3de234 Changed the walking function to enable interaction with Enterable objects 2018-01-17 21:11:16 -05:00
simon
3505a466bb Fixed compilation errors 2018-01-17 20:31:35 -05:00
simon
3d10e4306b Merge branch 'master' into vaults
# Conflicts:
#	Server/src/main/java/net/simon987/server/GameServer.java
#	Server/src/main/java/net/simon987/server/game/World.java
2018-01-17 20:29:37 -05:00
simon
210e579995 Number of assembly errors is also sent on code upload 2018-01-17 19:02:36 -05:00
simon
a285b3104e Moved Vault Door code to NPC Plugin. Fixed code styling. Fixed compilation errors 2018-01-14 13:33:40 -05:00
simon
947deea784 Merge remote-tracking branch 'origin/vaults' into vaults 2018-01-14 12:04:04 -05:00
simon
4293fc0315 Support for variable World size 2018-01-14 12:02:32 -05:00
Luc Lagarde
c610929809
Fix maven build error
Removes a reference to com.sun.istack.internal.Nullable and an associated annotation, which causes the maven build to fail.
2018-01-11 21:00:26 -06:00
simon
54b72e89b3 Fixes #121 + Saner thread safety 2018-01-09 22:10:55 -05:00
Simon Fortier
59fd620e4a
Merge pull request #118 from sg495/master
Implemented selective loading/unloading of worlds.
2018-01-09 20:35:41 -05:00
Jaggernaut555
7cbfb822b8 Updated LogManager 2018-01-09 14:00:36 -08:00
sg495
a04207b5e0 Added some cyphers for use in vault doors.
1. Created net.simon987.server.crypto package and moved RandomStringGenerator there.
2. Created CryptoProvider class, added a global instance to GameServer for use by game entities.
3. Created interface for cyphers, abstract class for shift substitution cyphers, classes for no cypher, Caesar cypher, Vigenere cypher and autokey cypher.
4. Created some Crypto exceptions.
5. Removed static encryption/decryption methods from VaultDoor, and moved getRandomPassword() to the global CryptoProvider instance.
2018-01-09 17:14:31 +01:00
simon
6fc583d6f0 Registers are cleared on code upload 2018-01-08 19:12:39 -05:00
sg495
46483b2bf8 Added a RandomString class from stackoverflow, to generate random alphanumeric strings (to be used as passwords).
Added some code to VaultDoor, including random password generation and code to encrypt/decrypt under a Vernam-like cypher.
Modified door opening policy to include the possibility of keeping the door open.
2018-01-08 20:40:50 +01:00
sg495
d65660b5e9 Merge branch 'master' of https://github.com/simon987/Much-Assembly-Required
# Conflicts:
#	Server/src/main/java/net/simon987/server/GameServer.java
2018-01-08 18:28:37 +01:00
sg495
593be7624e Implemented selective loading/unloading of worlds. Summary of changes:
1. Database is now iteratively updated, rather than dropped and recreated every time the universe is saved.
2. A single connection to the database is opened at server creation time, and used throughout.
3. Worlds, users and server information are now stored with appropriate IDs, so that they can be suitably updated. The world ID can be computed from world coordinates alone.
4. After saving, a world is unloaded from memory if it doesn't contain any updatable objects, and if all of its neighbours are either:  (i) uncharted; (ii) not loaded in memory; (iii) without any updatable objects. This ensures that world unloading/reloading cannot be spammed by a single bot repeatedly transitioning in/out of an otherwise empty world.
5. The instance method GameUniverse.getWorld(int,int,boolean) first checks the world with given coordinates is in memory, then tries to load it from database, and only then creates a new one (if required by the boolean flag).
6. Worlds are now stored in a Hashtable indexed by world ID, for faster retrieval.
2018-01-08 18:23:10 +01:00