P0nk
72ff8d563b
Refactor packet string charset
2021-06-21 22:03:20 +02:00
P0nk
c4c5700d32
Add basic unit tests for ByteBufOutPacket
2021-06-21 21:45:30 +02:00
P0nk
4fd64884f2
Simplify getBytes and add tests for it
2021-06-21 21:45:06 +02:00
P0nk
6d02a95273
Simplify test setup for written bytes
2021-06-20 23:02:01 +02:00
P0nk
926371c9a7
Add unit tests for ByteBufInPacket
2021-06-20 22:53:20 +02:00
P0nk
aaf4b558f3
Finish InPacket & OutPacket implementations
2021-06-20 21:27:50 +02:00
P0nk
f3faee2e16
Add OutPacket interface and ByteBuf implementation
...
Replacement for LittleEndianWriter, GenericLittleEndianWriter,
and MaplePacketLittleEndianWriter.
2021-06-20 21:20:39 +02:00
P0nk
00abbb4acd
Add InPacket interface and ByteBuf implementation
...
Replacement for LittleEndianAccessor, SeekableLittleEndianAccessor,
GenericLittleEndianAccessor, and GenericSeekableLittleEndianAccessor.
2021-06-20 21:20:38 +02:00
Ponk
eb7ee9dabe
Merge pull request #33 from wejrox/Custom-rebirth-npc
...
Custom rebirth npc ID
2021-05-31 21:13:29 +02:00
James McDowell
136ea68ab3
Updated the rebirth NPC to use GraalJS
2021-05-26 19:45:58 +10:00
James McDowell
ae744aa870
Merge remote-tracking branch 'upstream/master' into Custom-rebirth-npc
2021-05-26 19:44:58 +10:00
James McDowell
e967294eb9
Add back in NPC conversation names
...
The names of the npc conversations were useful for context. Added them back in.
2021-05-26 19:41:27 +10:00
Ponk
2193057fce
Merge pull request #41 from P0nk/streamline-setup
...
Streamline setup
2021-05-24 21:04:50 +02:00
P0nk
ef12275f35
Move db stuff to its own directory, update README
2021-05-24 20:29:59 +02:00
P0nk
c514c303c7
Increase db init timeout
...
60 seconds might not be enough during the initial
Docker db setup, but 90 seconds should be plenty.
2021-05-24 20:26:18 +02:00
P0nk
75078a5fa1
Add sql script for basic admin account
2021-05-24 08:25:41 +02:00
Ponk
0b17725e8e
Merge pull request #35 from ronancpl7/fix-change-maps-disorder
...
Fix mob status crash & dmg from map hazard
2021-05-23 07:44:17 +02:00
Ronan Lana
3d5db5d79c
fix: incurred ambiguity import
2021-05-22 14:48:44 -03:00
Ronan Lana
d330376706
fix: missed stream import
2021-05-22 11:56:37 -03:00
Ponk
f01452dd87
Merge pull request #21 from P0nk/java-16-and-graal
...
Upgrade to Java 16 and GraalJS script engine
2021-05-21 21:23:50 +02:00
P0nk
d9d63a1b44
Refactor event max lobbies - is no longer a range
...
It's no longer a range because it:
1. Makes no sense for it to be a range
2. Makes for simpler scripts since returning a JS array is a hassle with Graal
2021-05-21 20:54:51 +02:00
P0nk
095008a20f
Fix event scripts' getEligibleParty
...
Cannot return a JavaScript array straight up
(otherwise you'll get a PolyglotMap):
it has to be converted first from inside the script.
2021-05-21 19:09:40 +02:00
P0nk
bcefd42093
Handle reactor scheduling outside of script
...
No longer need to make all invocations synchronized
2021-05-21 08:15:01 +02:00
P0nk
f9aec05779
Update GraalVM to latest version (21.1.0)
2021-05-20 22:22:26 +02:00
P0nk
406c43b0ec
Make all event script invocations thread safe
...
Simple solution for avoiding concurrent access
of the same evaluated script, but I would be surprised
if performance is not affected for the worse.
The same Invocable is used for all instances of an event,
so more active instances means higher contention of the single Invocable.
Hopefully the number of instances required for it to be noticeably slow
is high enough that this is not an issue.
2021-05-20 22:03:11 +02:00
P0nk
cdfb7074ec
Make all reactor script invocations thread safe
...
Might be a bit overkill to force synchronization
for every single method invocation when the only
scheduling done in reactor scripts are:
- 5511000 (summon Targa)
- 5511001 (summon Scarlion)
2021-05-20 21:30:46 +02:00
P0nk
2ce6041ef8
Add thread safe wrapper for Invocable
2021-05-20 21:00:48 +02:00
Ronan Lana
2aa09f89db
fix: Minor code typo
2021-05-20 13:01:42 -03:00
James McDowell
9128329d37
Swapped from list to set to prevent duplicates
...
Use a set instead, clone instead of adding directly to the list.
2021-05-20 19:16:22 +10:00
P0nk
3cda07db52
Merge branch 'master' into java-16-and-graal
...
# Conflicts:
# Dockerfile
2021-05-19 18:03:57 +02:00
Ponk
aa0d98af8b
Merge pull request #31 from wejrox/Mounted-config-files-docker-compose
...
Mounted config files docker compose and sped up image build times
2021-05-19 17:59:31 +02:00
Ronan Lana
f4a4acf742
Encode status patch
...
Filter out some status crashing players.
2021-05-18 20:21:38 -03:00
Ronan Lana
458de52dbc
Broadcast damage from map hazard
...
Fix taking damage from map hazard not showing to other players.
2021-05-18 18:16:46 -03:00
Ronan Lana
654d461da5
Revise non-related porridge loots
...
Remove non-related item from mobs.
2021-05-18 14:54:34 -03:00
James McDowell
0345ce844e
Removed unnecessary import
2021-05-16 14:51:54 +10:00
James McDowell
cff3d3df56
Added the ability to specify a custom rebirth npc id, which is automatically added to the list of scriptable npcs for overriding. Changed scriptable npcs to use config instead of a constants file, so that users can easily modify them without digging into the code and requiring a rebuild.
2021-05-16 14:46:38 +10:00
James McDowell
f47b38f65d
Skip tests and run compile in parallel for speed
2021-05-16 14:32:27 +10:00
James McDowell
45ca7009c8
Updated to allow a generic rebirth npc id to be passed through and used for rebirthing if it's enabled.
2021-05-16 10:32:51 +10:00
James McDowell
8429d78e01
Optimised multi layered builds to speed up deployment, added comments to help new developers, reduced unnecessary objects being sent to the docker build context, mounted in files that may change regularly to remove the requirement for a full rebuild.
2021-05-16 09:59:12 +10:00
James McDowell
d98ab8cf1e
Updated dockerignore to prevent the generated database files from being sent to the build context. This was causing an error connected to the docker daemon when issuing docker-compose up --build, possibly due to the size or number of files in that folder causing an overflow of sorts
2021-05-16 09:11:11 +10:00
P0nk
5d4a2506e8
Update README with Java 16
2021-04-18 16:01:10 +02:00
P0nk
4b03b3c4ac
Update Dockerfile to Java 16
2021-04-18 12:40:11 +02:00
P0nk
cd6415b061
Enforce implementation of PortalScript
2021-04-18 12:31:01 +02:00
P0nk
46c2d92082
refactor: use Invocable instead of ScriptEngine in script managers
...
- Make fields final
- Inject event script variable earlier
- Remove redundant fields
2021-04-18 11:26:05 +02:00
P0nk
58e69654a2
Let scripts access Java classes
...
Fix script attempting to schedule with non-long (double) time value
2021-04-17 22:26:18 +02:00
P0nk
fcd879f97c
Convert remaining scripts to Graal
...
Mainly missed scripts that use Nashorn's "Packages"
2021-04-17 21:59:15 +02:00
P0nk
d2c7023e7b
Convert NPC scripts to Graal
2021-04-17 21:57:57 +02:00
P0nk
256e5688e0
Convert quest scripts to Graal
2021-04-17 21:57:48 +02:00
P0nk
542a7b7fd2
Convert reactor scripts to Graal
2021-04-17 21:57:37 +02:00
P0nk
984adc7885
Convert portal scripts to Graal
2021-04-17 21:57:27 +02:00