280 Commits

Author SHA1 Message Date
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
simon
a14853b12c Changed working directory for tests (temporary fix?) 2018-01-07 14:04:24 -05:00
simon
735a231767 Moved tests to appropriate directory 2018-01-07 13:55:42 -05:00
simon
1131e4d512 Fixes #112 (Part two) 2018-01-07 13:29:42 -05:00
simon
cfb02869bb Fixes #112 2018-01-07 13:02:49 -05:00
simon
cde03af8af Fixes #113 2018-01-07 12:57:06 -05:00
Hayden Kroepfl
eaef30eb49 Added Inc and Dec instructions based off Add code 2018-01-06 18:53:35 -07:00
simon
f68027bb4d Fixes tabs problem with equ 2018-01-06 14:04:31 -05:00
simon
24d81d194e Fixes #107 2018-01-05 22:08:53 -05:00
simon
a8beb8c3e2 Fixes #115 2018-01-05 21:38:07 -05:00
simon
9bb0dc9034 Boilerplate code for Vault Door 2018-01-05 20:42:24 -05:00
simon
8b0460f5f1 Fixed typos and code cleanup 2018-01-05 20:14:38 -05:00
Dylan Sheehy
7e773699b6 Created Shield hardware 2018-01-05 11:04:05 -06:00
simon
9b908a5310 Biomass count on NPC death is loaded from config 2018-01-03 19:19:19 -05:00
Simon Fortier
8ceeca564a
Merge pull request #66 from jtara1/master
HarvesterNPC should spawn a biomass in-place after they die. Fixes #33
2018-01-03 19:00:55 -05:00
James T
3ded64cb16 Update #66: add newest Server/Server.iml file 2018-01-02 15:29:14 -08:00
simon
4e76d57ef9 Loading & Saving support for MongoDB 2018-01-02 17:45:58 -05:00
simon
e2763faeee Fixes #97 2018-01-01 15:58:42 -05:00
simon
2a8658c598 Fixes #90 2018-01-01 15:28:12 -05:00
simon
85548ec3cb CHanged default energy value for biomass to 4000 + code styling 2018-01-01 15:21:39 -05:00
Simon Fortier
0f7b40f3ae
Merge pull request #95 from djsheehy/master
Inventory hardware: clearing a biomass yields energy. Fixes #94
2018-01-01 15:19:50 -05:00
simon
ee60216784 Small adjustments for laser hw, Improved OffsetOverFlow handling, Increased maximum guest count 2018-01-01 15:17:24 -05:00
Simon Fortier
c3a0d1bd4d
Merge pull request #93 from ChartreuseK/bug-80
Added handling of offset overflow and DUP factor overflow
2018-01-01 15:12:01 -05:00
Dylan Sheehy
cd8d883134 Charging energy from biomass now looks up value in config.properties 2018-01-01 13:39:57 -06:00
Simon Fortier
c7946a6356
Merge pull request #87 from ChartreuseK/bug-81
Added minimum length check to 'DW' parsing
2018-01-01 14:36:38 -05:00
simon
1e26c63358 Boolean result of ComPort actions are stored in B register 2018-01-01 12:03:36 -05:00
Simon Fortier
d832f65535
Merge pull request #84 from mlaga97/npc-combat
Allow ability to damage NPCs with Laser. Fixes #34
2018-01-01 11:07:04 -05:00
Hayden Kroepfl
e47e573b61 Added handling of offset overflow and DUP factor overflow, added new exception type. 2018-01-01 08:30:39 -07:00