Collin Smith
e4df005987
Rewrote engine and replaced Ashley with Artemis
...
Rewrote engine and replaced Ashley with Artemis
Added basic networking support for D2GS (handshake and sending initial player state to clients)
2019-12-11 02:07:55 -08:00
Collin Smith
d6c76d2add
Fixed an error in D2 file type
2019-12-06 23:47:57 -08:00
Collin Smith
d3529540ca
Committing local changes -- added D2 reference to Riiablo class
2019-12-05 04:06:43 -08:00
Collin Smith
1a7f6a95da
Added support for clearing map graph when map is disposed
...
Disposing maps was leaving invalid pathfinding results -- this fixes that
2019-12-04 23:49:20 -08:00
Collin Smith
6fed567f38
Animation box will update when initially loading COF
...
Animation box will update when initially loading COF
Debug drawing animation will display origin
Created issue #71
2019-12-04 15:29:41 -08:00
Collin Smith
a4068ba975
Improved D2.Entry
...
Renamed b1 to speed and changed to unsigned byte as short
Renamed b2 to unk1 and changed to unsigned byte as short
Added assertion that zero is really 0
2019-12-04 02:06:57 -08:00
Collin Smith
99256902e9
Added D2 finder to search for cofs in d2 files or dump d2 file entries
2019-12-03 21:30:06 -08:00
Collin Smith
20dc30409d
Removed additional debug logging
2019-12-03 20:51:54 -08:00
Collin Smith
d43dcf4116
Improved support for lower wall tiles by adding proper offset
2019-12-03 14:41:10 -08:00
Collin Smith
116865ca45
Moved Cell debug layer check up a line and improved its correctness
2019-12-03 14:13:43 -08:00
Collin Smith
08abc390af
Rolled back change to apply only to layer 0
2019-12-03 14:06:27 -08:00
Collin Smith
0efa88c141
Added support for hiding debug objects
...
Added support for hiding debug objects
Map cell values now have main and sub indexes unset
Added additional parameter that seems to block walk better on non-map floor tiles
2019-12-03 13:50:43 -08:00
Collin Smith
de5a9e3bd9
Added an additional debugging mode for RenderSystem to assist with debugging DS1 cells
2019-12-03 04:25:44 -08:00
Collin Smith
8a30752432
Added improved support for changing acts
2019-12-03 01:47:31 -08:00
Collin Smith
73960ab993
Fixed issue where _65 was not activated as a pop pad
2019-12-03 01:46:47 -08:00
Collin Smith
07d56dd3a6
Fixed an issue where specials were not being assigned new maps when recycled
...
Fixed an issue where specials were not being assigned new maps when recycled
Fixed issues drawing poppad zone areas
Added getPixOffset function in isometric camera to retrieve camera offset
2019-12-03 01:38:34 -08:00
Collin Smith
f1ac35cb68
Disposing map will now clear DT1s
2019-12-03 00:44:58 -08:00
Collin Smith
1075779ece
Fixed issue where freeing byte and tile arrays did not place them in proper pool resulting in invalid sized arrays being obtained
2019-12-03 00:39:41 -08:00
Collin Smith
d3aa3b4fc1
Fixed issues with zone pooling
...
Zone fields are now reset correctly
obtainByteArray and obtainTileArray now clear their data up to required size
2019-12-03 00:19:13 -08:00
Collin Smith
85546d197e
Added partial support for changing acts
...
Added partial support for changing acts (levels will come after waypoint are added)
Added a click lister to waypoint buttons and set their user object to referenced level
Changed from static loading screen to a dynamic one that is pushed over game screen and popped off to hide loads
Changed disposing strategy of GameLoadingScreen to always keep loading descriptor in memory
Client#clearAndSet(Screen) now disposes existing screens and clears before setting new one
2019-12-02 23:11:18 -08:00
Collin Smith
a58275f7d0
Committing builders for acts 2-5
2019-12-02 19:30:22 -08:00
Collin Smith
c5bd188f5d
Added support for rendering additional acts
2019-12-02 19:29:47 -08:00
Collin Smith
c4f1bec988
Added support for COF layers to search for DCC and DC6 versions
2019-12-02 18:08:51 -08:00
Collin Smith
96df3d913c
Added support for DC6 layers within COFs
2019-12-02 17:37:57 -08:00
Collin Smith
9f350b635e
Fixed an issue not pooling arrays of sizes that should be pooled
2019-12-02 14:38:36 -08:00
Collin Smith
b64900c52c
Added rudimentary support for BNCS (chat service)
2019-12-02 03:12:44 -08:00
Collin Smith
c009982e13
Changed port for d2gs within TCP/IP screen and implemented render() within d2gs
2019-12-02 02:03:31 -08:00
Collin Smith
f0a49b7c3a
Removed unused code
2019-11-30 22:55:08 -08:00
Collin Smith
2264a378cd
Amending previous commit -- removing Server class too
2019-11-30 22:15:25 -08:00
Collin Smith
c4917021ad
Removed old server code and replaced Account with a different implementation
2019-11-30 22:14:07 -08:00
Collin Smith
018cc9767c
Fixed passing connect info in JoinGame
2019-11-30 20:16:58 -08:00
Collin Smith
9f5d134eee
Added MSI (master slave instancer) to create child D2GS processes
...
Added MSI (master slave instancer) to create child D2GS processes
This is intended to act as a temp structure for testing until support for actual servers are added where an API can generate proper instances
2019-11-30 20:02:36 -08:00
Collin Smith
ca94ac5a60
Added support for joining game sessions with MCP
...
Added support for joining game sessions with MCP
Created MAX_PLAYERS constant in Engine
2019-11-30 15:22:03 -08:00
Collin Smith
4a5a03edbc
Added support for creating game sessions with MCP
...
Added support for creating game sessions with MCP
Forced debug mode for BNLS and MCP for testing purposes
Fixed type with Result#ALREADY_EXISTS constant
Extended GameSession to support builder pattern and CreateGame copy constructor
2019-11-30 02:24:13 -08:00
Collin Smith
ac35310ace
Added MCP server module which acts as the server browser
...
Added MCP server module which acts as the server browser
MCP only supports listing games at this time
Minor changes to LoginScreen to reflect how LobbyScreen was written differently
Added desktop with networking run config which starts up server instances and then a client
Created GameSession class which is used as a cache for mcp GameSession packets
2019-11-30 01:46:56 -08:00
Collin Smith
67b7700f7f
Changed LobbyScreen viewport to Riiablo.extendViewport to remove scaling
2019-11-29 21:43:01 -08:00
Collin Smith
7ebf72d231
Added login system and reintegrated realm lobby
2019-11-29 21:33:58 -08:00
Collin Smith
8f3975aeda
Added padding to text fields
2019-11-29 15:14:25 -08:00
Collin Smith
83de5e462e
Added rough in of audio emitter system
2019-11-29 15:11:28 -08:00
Collin Smith
31e3d7632e
Added QuillRat AI and support for missile entities
...
Added QuillRat AI
Added support for creating and firing Missile entities
Missile entities using separate physics system to step their movement
Added system to load Missile animations
Reduced Fallen trigger distance to 25 from 35 so they are less aggressive while testing
2019-11-29 02:03:56 -08:00
Collin Smith
d21f6b887d
Added automatic preloading of common sound assets to avoid hitching (~1.5MB usage)
2019-11-29 00:32:30 -08:00
Collin Smith
2c7d28a098
Implemented sequence system for Fallen and Zombie AIs
...
Implemented sequence system for Fallen and Zombie AIs
Moved some common AI actions to AI class (pathing, look at, sequence)
SequenceSystem will automatically reset anim speeds when changing modes
2019-11-29 00:31:06 -08:00
Collin Smith
ede01ecf3d
Added SequenceSystem and SequenceComponent to provide state transitions
2019-11-29 00:05:01 -08:00
Collin Smith
10dedcfecb
Added and disabled map disposing due to bug with multiple instances
2019-11-28 18:11:36 -08:00
Collin Smith
2139747d0c
Fixed issue where game would crash if trying to enter multiple games in a single instance
2019-11-28 18:08:33 -08:00
Collin Smith
b1b2e3985f
Added flags to control debugging for paths and box2d
2019-11-28 17:57:47 -08:00
Collin Smith
fe1f72332c
Added extra condition for debug renderer to not show animation frames for animations with single frames
2019-11-28 17:55:16 -08:00
Collin Smith
a072625dba
Moved Map into constructors and removed various setMap(Map) methods
...
Fixed issue where calling Map#generate() would throw a nested iterator error
2019-11-28 16:28:27 -08:00
Collin Smith
d09828e315
Removed MapLoader (see #13 )
2019-11-28 15:32:33 -08:00
Collin Smith
0d1b7819df
Rewrote Map and redesigned map/game screen loading strategy to better comply with #13
2019-11-28 15:29:53 -08:00
Collin Smith
58acc6d6bc
Replaced GridPoint2 with Vector2
...
Replaced GridPoint2 with Vector2
Reduced buffer size for DS1 to 8192B
Added extra debugging info for DS1 decode cases with extra bytes
2019-11-27 06:22:04 -08:00
Collin Smith
0249ca2883
Added more robust validation of character state changes for alpha and transform (see #37 )
2019-11-26 22:01:47 -08:00
Collin Smith
96823c46b3
Fixes error when creating a new character
2019-11-26 21:43:49 -08:00
Collin Smith
29941e106f
Removed object oriented engine code-base
...
Removed object oriented engine code-base and deprecated remaining classes
Removed some older test classes which implemented the old engine
Moved game screen panel classes to screen.panel package
Changed game screen panel classes to use Riiablo.game reference
2019-11-26 16:23:22 -08:00
Collin Smith
0617942f3e
Fixed Engine instantiation and added input processor for testing purposes
2019-11-26 15:27:13 -08:00
Collin Smith
6dd75af2f7
Added support for enforcing labels remain within screen bounds
2019-11-26 15:19:20 -08:00
Collin Smith
735fb021e9
Added support for monster label -- which is a distinction from other labels
2019-11-26 15:12:59 -08:00
Collin Smith
00f61303c4
Code cleanup
2019-11-26 00:51:19 -08:00
Collin Smith
f2ae483e4b
Updated UI practices and alignment to other screens -- fixed LoginScreen to use the extended viewport
2019-11-26 00:16:43 -08:00
Collin Smith
085e43d92e
Lowered item label height to compensate for them no longer being centered at the offset
2019-11-25 23:52:28 -08:00
Collin Smith
3442d3d3b2
Moved AISystem to correct package and implemented radius check to run AI
2019-11-25 23:48:16 -08:00
Collin Smith
4516249bc0
Committing AI system which will perform AI updates
2019-11-25 23:43:34 -08:00
Collin Smith
b49bcb6ef1
Added secondary stage called scaledStage
...
scaledStage will be used to render UI components with the isometric camera -- this will make components easier to read and select on mobile
2019-11-25 23:38:28 -08:00
Collin Smith
e3c608bd33
Disabled drawing labels when a menu or dialog is open
2019-11-25 22:24:19 -08:00
Collin Smith
59cf572815
Added additional condition for Npcs to face player
2019-11-25 22:12:01 -08:00
Collin Smith
c2af0cdbf6
Ported Fallen AI
2019-11-25 14:56:00 -08:00
Collin Smith
4297f76b5c
Added Npc greeting and additional state correctness assignments
2019-11-25 04:46:39 -08:00
Collin Smith
6e5d71545f
Set cof speeds back to 136 delta -- still needs work on proper formula, but this is fine for now
2019-11-25 04:40:47 -08:00
Collin Smith
38ceb8cd72
Extended InteractableComponent to support counter for number of concurrent interactions and added support in Npc AI for this
2019-11-25 04:10:02 -08:00
Collin Smith
ef0b99a02a
Added dialog boxes and support for Npc introduction and gossip functions
2019-11-25 03:59:56 -08:00
Collin Smith
98bd87ef61
Ported Zombie AI and fixed NPE case where target entity was not Interactable
2019-11-25 03:50:46 -08:00
Collin Smith
947b5974f9
Added debug text for AI status and added state names for Npc AI
2019-11-25 03:26:48 -08:00
Collin Smith
1fa7c20f3b
Added support for generated monster entities
2019-11-25 03:19:35 -08:00
Collin Smith
5688752d71
Added AI system along with ported Npc AI
2019-11-25 00:53:10 -08:00
Collin Smith
1f62cf4aca
Added MonsterComponent reference in AI, added component mapping to Npc
2019-11-24 22:40:37 -08:00
Collin Smith
83dc4dae68
Adjusted z-order of mobile controls to prevent interaction and blocking of panels
2019-11-24 22:14:35 -08:00
Collin Smith
cb828b100a
Prevent touch movement on android
2019-11-24 22:02:28 -08:00
Collin Smith
bff683203d
Added AIComponent and implemented Interactor into AIs
...
Added AIComponent and implemented Interactor into AIs
Added support for NpcMenu along with correct stage placement
2019-11-24 21:54:04 -08:00
Collin Smith
e0bee92925
Added ClientScreen reference within Riiablo class and removed it from Engine and ObjectIterator constructors
2019-11-24 16:41:54 -08:00
Collin Smith
d7ba715fef
Added control for debug mode
2019-11-24 16:29:04 -08:00
Collin Smith
cb95b0c8ce
Removed unused code and reduced pathing limit to 300 nodes now that raycasting can take over
2019-11-24 03:36:17 -08:00
Collin Smith
bca49f4633
Added WarpInteractor and improved target handling within TouchMovementSystem
2019-11-24 03:15:28 -08:00
Collin Smith
8f147094a7
Refined TouchMovementSystem to work more smoothly near walls
...
Refined TouchMovementSystem to work more smoothly near walls by turning off pathing and using raycasting and box2d
Replaced gdx-ai raycaster with my own implementation that supports passing size and flags
Exposed MapGraph#getOrCreate(Vector2) -- may move this class and return these to package access later
2019-11-24 02:48:41 -08:00
Collin Smith
d29ed177ca
Added support for touch movement and interaction
...
Added interact system and interactors for object and items
Added minimum bounds to item entities to make them easier to interact with
Committing EntityAdapter -- should have been included a few commits ago
Added ClientScreen to Engine constructor
Committing ClientScreen -- tbd replacement for GameScreen
Added CollisionSystem to update Box2D bodies with current object state
2019-11-23 22:52:40 -08:00
Collin Smith
6cd0777557
Workaround for interactable entities not allowing to be pathed to (since their coords were flagged on map)
2019-11-23 19:22:25 -08:00
Collin Smith
29cbcead58
Made item entities interactable
2019-11-23 18:29:31 -08:00
Collin Smith
917c461e37
Extended PathfindDebugSystem to better support using independently from engine to test path finding
...
Added support for drawing ellipses with DebugUtils
2019-11-23 17:59:11 -08:00
Collin Smith
407d41c7ba
Implemented a JPS path finder (see #63 )
2019-11-23 16:58:37 -08:00
Collin Smith
b2d8b7f8b9
Fixed variable names
2019-11-23 02:04:30 -08:00
Collin Smith
1d820b8bb2
Folded NodeRecord into Point2
...
Renamed IndexAStarPathFinder to AStarPathFinder because it isn't indexed anymore
2019-11-22 23:49:49 -08:00
Collin Smith
42c440618f
Minor change to enforce correct heuristic type is assigned to heuristic fields
2019-11-22 22:34:46 -08:00
Collin Smith
99914c2c23
Rewrote path finding related classes to be more tailored to my needs (see #63 )
2019-11-22 22:20:53 -08:00
Collin Smith
673463da91
Refactored and moved some things around -- changed node category to byte
2019-11-22 16:17:04 -08:00
Collin Smith
8545fc22fc
Replaced node records array with one that is dynamically resized
2019-11-22 16:00:41 -08:00
Collin Smith
a5898b568f
Moved graph indexing abstraction to node interface
...
Moved graph indexing abstraction to node interface
Created clearanced node interface
Simplified IndexedAStarPathfinder
2019-11-22 03:26:15 -08:00
Collin Smith
f7bdd339e4
Added support for item entities
...
Created ItemLoaderSystem to defer flippy file loading
Item entities are selectable only after their flippy file has been loaded since they have no bbox
Changed implementations from EntityListener to EntityAdapter
2019-11-21 04:11:16 -08:00
Collin Smith
07ec6a9bc1
Relaxed family constraint that all entities should have a COF -- items do not
2019-11-21 03:39:31 -08:00
Collin Smith
354c715261
Fix for shoving NPCs
2019-11-21 02:00:14 -08:00
Collin Smith
2e264abb66
Fixed issue setting flags for multiple rows
2019-11-21 01:58:12 -08:00
Collin Smith
d6f8de3b86
Added support for generating box2d bodies for monster and objects and generalized player entities
...
Added support for generating box2d bodies for monster and objects and generalized player entities
Added support for object entities to perform a bitwise or with the map tile flags so pathfinding will avoid them
2019-11-21 01:34:56 -08:00