GithubHelp home page GithubHelp logo

grunt-lucas / porytiles Goto Github PK

View Code? Open in Web Editor NEW
18.0 4.0 3.0 6.14 MB

Overworld tileset compiler for Pokémon Generation 3 decompilation projects

License: MIT License

Makefile 0.73% C++ 96.02% Shell 0.60% Lua 0.84% C 1.81%
c-plus-plus c-plus-plus-20 gen-3 palette palette-generation palette-generator palettes pokemon tileset tilesets

porytiles's People

Contributors

grunt-lucas avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar

porytiles's Issues

Fatal error: palette assignment parameter search matrix failed to find any suitable parameters

Me again lol,
I'm trying to generate a tileset using compile-primary and I have the following error:

warning: ./my-tileset/assign.cfg: cached compilation settings not found [-Wmissing-assign-config]
note: running full parameter search matrix, this may take awhile...

fatal error: palette assignment parameter search matrix failed to find any suitable parameters
note: please see the following wiki page for help with working through this error:
      https://wiki-page-link-goes-here.com
terminating compilation of ./my-tileset/

This might be relevant: I was having the "running full parameter search matrix, this may take awhile..." message for a long while, and I accidentally closed the terminal. When I ran the command again, I got this error.

[EDITED] I'd like to avoid losing all the maps I've made using the previous iteration of this tileset; is there a way to rollback what Porytiles has done without losing everything?

Just for context, these are my three .PNG images:
bottom
middle
top

Add additional user warnings

Describe the feature

  • -Wpalette-alloc-efficiency
    • warn user if palette allocation was not 100% efficient
  • -Wno-transparency-present
    • warn user if the tileset did not have any of the selected transparency color
    • this is a common mistake if user decompiles a vanilla tileset that uses a different transparency color
      • user may forget to set -transparency-color which will break compilation

Address critical in-code TODOs and FIXMEs

Description

  • Check all in-code TODOs, FIXMEs, FEATUREs, use todo.sh to find them
  • Address those that are critical to a polished 1.0.0 product, they are marked 1.0.0

Secondary tileset attributes aren't generated

I'm having trouble with attribute assignment (like, this metatile is tall grass, this one's a puddle, etc).
I have a primary and a secondary tileset. On my primary tileset all the metatile attributes work fine, but on the secondary tileset there's a house with a door and I can't for the life of me tell it that the door is indeed a door.

These are the images for the tileset:
image

This is Porymap lying to me:
image
Note that Porymap also sees the whole house as layer type "middle/top", while it should mainly be bottom (grass) / middle (house), shouldn't it? Again, layer type works fine on my primary tileset.

The attribute file contains:

id,behavior
0,MB_PUDDLE // <---- I added this just to see if it'd change the first tile's attribute: it does not, either
35,MB_NON_ANIMATED_DOOR

The command line I'm running is the following (from inside pokeemerald-expansion/tools/porytiles/, which contains the tileset images in the secondary and primary folders):

porytiles compile-secondary -dual-layer -Wall -o ../../data/tilesets/secondary/test-secondary ./secondary ./primary ../../include/constants/metatile_behaviors.h

Am I missing something or is this a bug?

Add an option to print a report with various compilation statistics

Describe the feature

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.