Coder Social home page Coder Social logo

pmdodump's Introduction

PMD: Origins

Open source Pokémon roguelike with modding tools.

Thread on Pokécommunity

https://www.pokecommunity.com/showthread.php?p=10325347

Wiki

https://wiki.pmdo.pmdcollab.org/Main_Page

Download

https://github.com/audinowho/PMDODump/releases

How to Run

Follow the instructions inside the README.txt file in the game folder.

Repository

This repository contains only code that builds the data used in PMDO, its updater, and scripts that are run to deploy it. It does not contain the base engine of the game! The submodules supply those things:

Submodules

  • PMDC: Contains battle system code roguelike engine that PMDO runs on.
  • DumpAsset: Contains the full asset data for PMDO.
  • RawAsset: Contains unconverted graphics.

Pull all submodules recursively.

  • Run git submodule update --init --recursive to get all the submodules.
  • You may need to regenerate NuGet packages for the RogueEssence solution first, before building.

Building Game

  • Run dotnet publish -c Release -r win-x86 PMDC/PMDC/PMDC.csproj to publish to Windows x86.
  • Run dotnet publish -c Release -r win-x64 PMDC/PMDC/PMDC.csproj to publish to Windows.
  • Run dotnet publish -c Release -r linux-x64 PMDC/PMDC/PMDC.csproj to publish to Linux.
  • Run dotnet publish -c Release -r osx-x64 PMDC/PMDC/PMDC.csproj to publish to Mac.
  • Files will appear in the publish folder.

Building Server

  • Run dotnet publish -c Release -r win-x64 PMDC/RogueEssence/WaypointServer/WaypointServer.csproj to publish to Windows.
  • Run dotnet publish -c Release -r linux-x64 PMDC/RogueEssence/WaypointServer/WaypointServer.csproj to publish to Linux.

Building Installer/Updater

  • Run dotnet publish -c Release -r win-x64 PMDOSetup/PMDOSetup.csproj to publish to Windows.
  • Run dotnet publish -c Release -r linux-x64 PMDOSetup/PMDOSetup.csproj to publish to Linux.
  • Run dotnet publish -c Release -r osx-x64 PMDOSetup/PMDOSetup.csproj to publish to Mac.
  • Files will appear in the publish folder.

Projects

DataGenerator and MapGenTest are two projects not meant to be deployed.

  • DataGenerator is used to construct data files of all dungeons, Pokémon, etc.
  • MapGenTest is used to bulk test and debug dungeon maps.

DataGenerator Deployment Order

  • One-time: Run -itemprep to generate monster/status/element tables needed for items.

  • Run Scripts/item_sync.py to update exclusive item spreadsheet with data generated above. It will generate a csv of exclusive items to be used in the -dump step.

  • Reserialize Skills and Monster (Or regenerate Monster) using -reserialize Skill or -reserialize Monster

  • Dump all data using -dump. It depends on the csv of exclusive items to generate that exclusive items (item creation). It also generates an XML to map species to family items (spawning lookup), and a common_gen.lua containing tables of generic trades and specific trades.

  • Generate tables for string merge with -strings out.

  • Sync the translation table using Scripts/strings_sync.py

  • Uptake tables for string merge with -strings in.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.