A freeform hierarchy will lead to complex, unreadable, and unmaintainable Java code.
Use OOP. Figure out what your data model really is and what the entities are (e.g., players, monuments, etc.). Then define actual classes for them. Each of them can then be easily serialized - you could even have them serialized into a database with things like Hibernate if you needed.