Commit graph

957 commits

Author SHA1 Message Date
SenseiKiwi
3eaf6cdfb8 Organized Doorway Code
Separated the code that carves up doorways in mazes. Mostly a minor
change in preparation for giving doors smarter placements.
2013-12-29 22:35:13 -04:00
SenseiKiwi
cee4005513 Reduced Floor Doorways
Added code to minimize the number of doorways that involve dropping
through the floor. Added a DisjointSet class as part of the
implementation. I also split the maze construction process into two
classes (MazeDesigner and MazeBuilder) to make it clearer.
2013-12-29 21:31:10 -04:00
SenseiKiwi
22ab4e3639 Improved Second Step
Deleted old function for removing random rooms. Fixed the occasional NPE
described in my previous commit - deferred the removal of nodes from the
graph until after iterating over their collection. Added conditions for
removing maze sections that are too small to be useful.
2013-12-29 03:11:02 -04:00
StevenRS11
cd432c532f Rift balance change 2013-12-29 01:05:40 -06:00
SenseiKiwi
31f0c1ca0c Completed Second Step of Maze Generation
Completed the second step of maze generation. In this step, a graph is
built that describes which rooms can be connected to each other by
doorways. A maze is created by removing nodes (rooms) from the graph.
The algorithm is incomplete, but it already produces interesting mazes
comparable to DD's hand-made mazes.

A few details for the future:
1. Doorways are currently carved into walls at default locations. This
is just for testing and placement should be improved later. Some
doorways should be removed and redundant doorways should be possible.
2. The size of a section should be assessed and the section should be
discarded if it has too few rooms.
3. An NPE occurs every so often when a maze is generated. It's possible
that it happens because of removing a node from the graph that is
coincidentally the current node for LinkedList's iterator. The solution
would be to add nodes to a list and defer removals until after the
iteration is done.
2013-12-28 22:49:11 -04:00
SenseiKiwi
81bac5d1c2 Progress on Second Step
Made some progress on the second step of our maze generation algorithm:
building an adjacency graph for setting up doorways later. Renamed the
SpatialNode class to PartitionNode to better represent its role.
2013-12-27 21:58:17 -04:00
SenseiKiwi
28cb2e5e74 Merge remote-tracking branch 'upstream/1.6.2-code' into mazes 2013-12-27 03:12:26 -04:00
SenseiKiwi
a9f0bc5069 More Maze Generation
Made some changes to maze generation to prune out random rooms from the
structure. This doesn't look as nice as I'd hoped, so I'm going to try
some other approaches.
2013-12-27 03:11:59 -04:00
StevenRS11
a0d0f6e19b Fixed chunk loading causing crash
Also might have increased pocket generation time
2013-12-27 01:08:50 -06:00
SenseiKiwi
82da53b992 Minor Change
Added blank lines to Point3D to space out functions. <_<
2013-12-26 15:29:42 -04:00
SenseiKiwi
820e72f17a Added First Step of Maze Generation
Added classes for generating maze dungeons. At the moment, the dungeons
are generated in place of our pocket dimensions to make testing easy.
We'll need to restore pocket generation later and integrate the mazes
into the dungeon packs later. Currently, the structures are very
incomplete (they don't even have doorways), but this is only the first
step.
2013-12-26 15:29:20 -04:00
StevenRS11
180720c04b Merge pull request #116 from SenseiKiwi/master
Fixed Saving Log Spam
2013-12-25 23:33:09 -08:00
StevenRS11
8a7761aa7c not quite 2013-12-26 00:13:25 -06:00
StevenRS11
cf8be344c9 Fixed! 2013-12-26 00:06:50 -06:00
StevenRS11
ef367847da take3 2013-12-26 00:02:35 -06:00
StevenRS11
3924d6d1d6 finally? 2013-12-25 23:49:03 -06:00
StevenRS11
56d40aec1f mostbuild 2013-12-25 23:46:25 -06:00
StevenRS11
9a0ee7c210 Build 2013-12-25 23:43:35 -06:00
StevenRS11
d45a257edc more build 2013-12-25 23:25:05 -06:00
StevenRS11
2355c92102 build 2013-12-25 23:14:13 -06:00
StevenRS11
c3b3db4ca0 Lots of changes
Rerworked rift growth
Fixed teleport command
Fixed deleteRifts command
Fixed Rift rendering
2013-12-25 14:16:10 -06:00
SenseiKiwi
72196c6afd Fixed Saving Log Spam
Removed the code from PocketManager that would output messages about
saving dim data every so often since it was causing log spam.
2013-12-24 00:58:23 -04:00
SenseiKiwi
65ed1de6ee Merge remote-tracking branch 'upstream/1.6.2-code' into 1.6-fixes 2013-12-24 00:36:32 -04:00
SenseiKiwi
6d2c645ce9 Minor Changes
No changes to functionality
2013-12-24 00:36:02 -04:00
StevenRS11
06d2dcaa74 build 2013-12-22 17:19:06 -06:00
StevenRS11
6d64a54b75 Revert "build"
This reverts commit e7dcc20fad.
2013-12-22 17:18:16 -06:00
StevenRS11
399bb0ea9e Merge pull request #115 from SenseiKiwi/1.6-fixes
More Dungeons
2013-12-22 15:09:36 -08:00
SenseiKiwi
b929724781 Merge remote-tracking branch 'upstream/1.6.2-code' into 1.6-fixes 2013-12-22 19:06:12 -04:00
SenseiKiwi
b6669183bc More Dungeons
More dungeons for the Ruins pack. You'll never see it coming.
2013-12-22 19:05:04 -04:00
StevenRS11
82a17a2981 Merge pull request #114 from SenseiKiwi/1.6-fixes
Overhauled Loot
2013-12-22 14:44:14 -08:00
SenseiKiwi
f40f42298f Merge remote-tracking branch 'upstream/1.6.2-code' into 1.6-fixes 2013-12-22 18:39:46 -04:00
StevenRS11
e7dcc20fad build 2013-12-22 17:33:02 -05:00
SenseiKiwi
cfb370ad1f Minor Change
Removed a pointless SupressWarning annotation
2013-12-22 18:30:41 -04:00
SenseiKiwi
a6048c6c29 Overhauled Loot
Changed our loot generation. Instead of relying on Minecraft's built-in
loot categories, we now have our own static loot category. There are two
types of chests now. Regular chests contain randomly-picked coal, iron,
gold, diamonds, emeralds, quartz, enchanted books, and golden apples
(very rare). We also have a function for filling out "grave chests",
which occur in 1 out of every 7 chests. Those contain rotten flesh,
bones, and some armor pieces and equipment that are assigned random
damage values and occasionally also get level 1 enchantments. Small
changes were made to various files to incorporate this update.
2013-12-22 18:30:16 -04:00
StevenRS11
b3349ac3e3 build 2013-12-22 17:13:16 -05:00
StevenRS11
9bd9cfb700 Fixed rendering, simplified netcode 2013-12-22 16:53:13 -05:00
StevenRS11
4e0b7fa977 Fixed crashbug, now to fix rendering 2013-12-22 02:02:07 -05:00
StevenRS11
f88c314922 TESTING 2013-12-22 00:33:58 -05:00
StevenRS11
9f2d1b1109 more building 2013-12-21 23:32:48 -05:00
StevenRS11
2cc0b7e2ca Buildserver 2013-12-21 16:53:19 -05:00
SenseiKiwi
75e103aa65 Merge remote-tracking branch 'upstream/1.6.2-code' 2013-12-20 17:28:50 -04:00
StevenRS11
833e5d4e1c Merge pull request #112 from SenseiKiwi/rewrite
Fixed ClassCastException in DungeonPack
2013-12-20 00:01:21 -08:00
SenseiKiwi
13458029b4 Fixed ClassCastException in DungeonPack
Fixed a bug in DungeonPack that would trigger a rare ClassCastException
during dungeon selection. We were comparing instances of DungeonType
against WeightedContainer<DungeonType>. This wouldn't break dungeon
generation because DD falls back on selecting a random dungeon if
rule-based selection fails. It would allow duplicate dungeons to appear
in the same chain, though.
2013-12-20 01:10:55 -04:00
StevenRS11
51bd96dbe4 Merge pull request #111 from deathrat/1.6.2-code
1.6.2 code
2013-12-17 16:59:51 -08:00
deathrat
3e7ffe0d79 Updated gradlew permissions
Signed-off-by: deathrat <deathrat43@gmail.com>
2013-12-17 19:31:34 -05:00
deathrat
2ec43fc7d0 Fixed archive naming
Signed-off-by: deathrat <deathrat43@gmail.com>
2013-12-17 19:20:27 -05:00
StevenRS11
b83a766695 Merge pull request #110 from deathrat/1.6.2-code
Fixed problems with buildscript
2013-12-17 16:10:07 -08:00
deathrat
8d19d71d8a Fixed problems with buildscript
Signed-off-by: deathrat <deathrat43@gmail.com>
2013-12-17 19:09:53 -05:00
StevenRS11
f28f071095 Merge pull request #109 from deathrat/1.6.2-code
Added Gradle Wrapper and set build path for jar
2013-12-17 00:52:57 -08:00
deathrat
a8baba9430 Set jar path for Gradle Script
Signed-off-by: deathrat <deathrat43@gmail.com>
2013-12-17 03:51:25 -05:00