Difference between revisions of "Pro-D"
Hari Seldon (talk | contribs) |
|||
(11 intermediate revisions by one other user not shown) | |||
Line 4: | Line 4: | ||
Pro-D’s main features include random map generation, A* pathfinding, turn-based progression, object distribution, field of view and fog of war. The package supports use of both 2D and 3D assets even though the generation field is two dimensional. | Pro-D’s main features include random map generation, A* pathfinding, turn-based progression, object distribution, field of view and fog of war. The package supports use of both 2D and 3D assets even though the generation field is two dimensional. | ||
==Package Demo== | |||
You may check the main features of Pro-D through the following links: [http://graylakestudios.com/graylakestudios/graylake_redirect/rd_prod_webplayer_editor.html Editor] | [http://graylakestudios.com/graylakestudios/graylake_redirect/rd_prod_webplayer_2d.html 2D] | [http://graylakestudios.com/graylakestudios/graylake_redirect/rd_prod_webplayer_3d.html 3D] | |||
== Downloads & Versions == | == Downloads & Versions == | ||
Pro-D is currently on version 4. | Pro-D is currently on version 4.2 and has only one version: | ||
* [https://www.assetstore.unity3d.com/en/#!/content/8553 Pro-D Total] Pro-D Total is the complete version that has all functionality and requires a license to use. [https://www.assetstore.unity3d.com/en/#!/content/8553 Learn about Pro-D Total here] | |||
* [https://www.assetstore.unity3d.com/en/#!/ | |||
Pro-D requires Unity Engine: | Pro-D requires Unity Engine: | ||
Line 17: | Line 21: | ||
== Code Structure == | == Code Structure == | ||
Main components of Pro-D are the MethodLibrary and the Materializer. You can find more detailed information in the [http://graylakestudios.com/graylakestudios/graylake_redirect/ | Main components of Pro-D are the MethodLibrary and the Materializer. You can find more detailed information in the [http://graylakestudios.com/graylakestudios/graylake_redirect/rd_prod_manual.html Manual here]. | ||
'''Cells, Maps, WorldMaps''' | '''Cells, Maps, WorldMaps''' | ||
Line 59: | Line 63: | ||
* Map to texture, for previews and '''minimaps''' | * Map to texture, for previews and '''minimaps''' | ||
* Capability to '''import and export maps''' using the popular '''.tmx format''' that allows editing randomly generated maps with third-party softwares such as [http://www.mapeditor.org/ third-party software Tiled]. | * Capability to '''import and export maps''' using the popular '''.tmx format''' that allows editing randomly generated maps with third-party softwares such as [http://www.mapeditor.org/ third-party software Tiled]. | ||
* Fully '''commented code''' that comes with [http://graylakestudios.com/graylakestudios/graylake_redirect/ | * Fully '''commented code''' that comes with [http://graylakestudios.com/graylakestudios/graylake_redirect/rd_prod_doxygen.html online documentation] made possible by [http://www.stack.nl/~dimitri/doxygen/ Doxygen]. | ||
* A [http://graylakestudios.com/graylakestudios/graylake_redirect/ | * A [http://graylakestudios.com/graylakestudios/graylake_redirect/rd_prod_community.html vibrant community subreddit] and a responsible dev team that promises immediate responses to all your inquiries and questions. | ||
Line 76: | Line 80: | ||
Special thanks to: | Special thanks to: | ||
* Tycho Henzen | * Tycho Henzen | ||
* The most wonderful contributors and supporters [http://graylakestudios.com/graylakestudios/graylake_redirect/ | * The most wonderful contributors and supporters [http://graylakestudios.com/graylakestudios/graylake_redirect/rd_prod_community.html Pro-D Community] at r/ProD | ||
== Made with Pro-D == | |||
'''Games''' | |||
Released: | Released: | ||
* [https://play.google.com/store/apps/details?id=com.graylakestudios.krogue Auto-Rogue] | * [https://play.google.com/store/apps/details?id=com.graylakestudios.krogue Auto-Rogue] | ||
Line 87: | Line 93: | ||
* [http://globalgamejam.org/2014/games/shifting-bricks Shifting Bricks] | * [http://globalgamejam.org/2014/games/shifting-bricks Shifting Bricks] | ||
* [http://jurvanoerle.nl/zombieappocalypse_blog.html Zombie Apocalypse] | * [http://jurvanoerle.nl/zombieappocalypse_blog.html Zombie Apocalypse] | ||
'''Tools''' | |||
Released: | |||
* [https://play.google.com/store/apps/details?id=com.GrayLake.ProDnD_1&hl=en ProD&D] | |||
== Important links == | == Important links == | ||
* | * Get [https://www.assetstore.unity3d.com/en/#!/publisher/3258 Pro-D]. | ||
* Check the [http://graylakestudios.com/graylakestudios/graylake_redirect/ | * Check the web demos: [http://graylakestudios.com/graylakestudios/graylake_redirect/rd_prod_webplayer_editor.html Editor] | [http://graylakestudios.com/graylakestudios/graylake_redirect/rd_prod_webplayer_2d.html 2D] | [http://graylakestudios.com/graylakestudios/graylake_redirect/rd_prod_webplayer_3d.html 3D] | ||
* Download [http://graylakestudios.com/graylakestudios/graylake_redirect/rd_prod_manual.html the manual]. | |||
* Download [http://graylakestudios.com/graylakestudios/graylake_redirect/ | * Visit the [https://produnity.blogspot.com/ blog]. | ||
* E-mail us your questions, feedback and more at Unity3D@graylakestudios.com. | * E-mail us your questions, feedback and more at Unity3D@graylakestudios.com. | ||
* Join the [http://graylakestudios.com/graylakestudios/graylake_redirect/ | * Join the [http://graylakestudios.com/graylakestudios/graylake_redirect/rd_prod_community.html community subreddit] and ask others. | ||
* [http://graylakestudios.com/graylakestudios/graylake_redirect/ | * [http://graylakestudios.com/graylakestudios/graylake_redirect/rd_prod_subscribe.html Subscribe] to our mailing list and get informed about updates, releases and contests. | ||
== Screenshots == | == Screenshots == | ||
* [http://imgur.com/a/IgZhl#0 Link to Imgur | * [http://imgur.com/a/inq8m#0 Link to Imgur Album 1.] | ||
* [http://imgur.com/a/IgZhl#0 Link to Imgur Album 2.] | |||
http://i.imgur.com/aLLYi8d.jpg | http://i.imgur.com/aLLYi8d.jpg | ||
Line 109: | Line 121: | ||
http://i.imgur.com/cTON5Ve.jpg | http://i.imgur.com/cTON5Ve.jpg | ||
[[Category:Library]] |
Latest revision as of 11:02, 13 January 2015
Introduction
Pro-D is a versatile game development kit in C# designed for the Unity Engine. Pro-D gives you the essential tools for making games with procedurally generated content as well as various common tools for roguelike development.
Pro-D’s main features include random map generation, A* pathfinding, turn-based progression, object distribution, field of view and fog of war. The package supports use of both 2D and 3D assets even though the generation field is two dimensional.
Package Demo
You may check the main features of Pro-D through the following links: Editor | 2D | 3D
Downloads & Versions
Pro-D is currently on version 4.2 and has only one version:
- Pro-D Total Pro-D Total is the complete version that has all functionality and requires a license to use. Learn about Pro-D Total here
Pro-D requires Unity Engine: Download Unity Engine here.
Code Structure
Main components of Pro-D are the MethodLibrary and the Materializer. You can find more detailed information in the Manual here.
Cells, Maps, WorldMaps
Worldmaps are made out of maps. For example a worldmap can be, “the Ancient Dungeon Ruins”, and its maps can be individual levels in your game “Dungeon Ruins - Entrance”, “Dungeon Ruins - Maze” and “Dungeon Ruins - Lich’s Lair”. Maps are made out of cells. For example “Dungeon Ruins - Maze” will have Wall, Path, Trap, Entrance and Exit as some of its cells.
MethodLibrary.cs
WorldMap Generators use Map Generators. For example “the Ancient Dungeon Ruins” can use Generator_DungeonRuins.cs and Generator_Maze to make its individual maps. Map Generators always use MethodLibrary.cs methods: The MethodLibrary.cs contains all fundamental methods for making maps. For example Generator_DungeonRuins.cs uses the following and more:
- MethodLibrary.CreateRooms(...);
- MethodLibrary.CreateMaze(...);
- MethodLibrary.SetCellsOfTypeAToB(...);
- MethodLibrary.CloseDeadEndCells(...);
- MethodLibrary.ReduceUCorridors(...);
- MethodLibrary.ConvertUnreachableCells(...);
The MethodLibrary provides over 30 common methods to create and customize procedural worlds. In the Total version there are 12 distinct map generators including rocky hills, sinuous caverns, winding dungeons, shattered ruins, serpentine mazes, rustic villages and more all made possible by the library alone.
Materializer.cs
Materializer.cs uses the theme of a map and the resources folder to instantiate game objects. If a map has its theme as “Terminal Theme”, then the Materializer.cs will look into “Pro-D\Visual Assets\Resources\Terminal Theme\Cells” and search for respective Prefabs such as Wall, Path, Trap, Entrance and Exit.
The Materializer is the tool to instantiate the aforementioned maps.
Pro-D allows the user to be in full control of the visual representation of the tiles. Developers can place the map on any axis they like which makes builtin Unity Physics features available for play. Due to this functionality devs can make both platformers and roguelikes alike. Materializer also allows setting orientations for your tiles. Whether your visuals are 2D or 3D, the individual assets can be flagged for rotation in case your assets require that.
Main Features
Following is a feature list for Pro-D Total:
- Over 30 base methods and algorithms to create maps
- 12 distinct ready to use generators for a wide variety of maps
- Infrastructure that allows use of both, 2D and 3D assets
- Camera systems for player tracking and free movement
- Turn based player movement and AI system
- A*pathfinding
- Fog of War with 7 different algorithms for different use-cases
- Map to texture, for previews and minimaps
- Capability to import and export maps using the popular .tmx format that allows editing randomly generated maps with third-party softwares such as third-party software Tiled.
- Fully commented code that comes with online documentation made possible by Doxygen.
- A vibrant community subreddit and a responsible dev team that promises immediate responses to all your inquiries and questions.
Development Team
The package is being developed by GrayLake Studios, an independent game design and development company that makes games.
Team members who worked on the package:
- Tobias Hoffmann - Programmer
- Wijnand van Tol - Programmer
- Erhan Türel - Supervisor
- Tunç Türel - Supervisor
- Saverio Wielkens - Artist
- Ies Wierdsma - Programmer
Special thanks to:
- Tycho Henzen
- The most wonderful contributors and supporters Pro-D Community at r/ProD
Made with Pro-D
Games
Released:
Prototyped:
Tools
Released:
Important links
- Get Pro-D.
- Check the web demos: Editor | 2D | 3D
- Download the manual.
- Visit the blog.
- E-mail us your questions, feedback and more at Unity3D@graylakestudios.com.
- Join the community subreddit and ask others.
- Subscribe to our mailing list and get informed about updates, releases and contests.
Screenshots