Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

A debug menu command to make a CSV file with all missing graphics. #34231

Closed
I-am-Erk opened this issue Sep 25, 2019 · 10 comments
Closed

A debug menu command to make a CSV file with all missing graphics. #34231

I-am-Erk opened this issue Sep 25, 2019 · 10 comments
Labels
Code: Tests Measurement, self-control, statistics, balancing. <Documentation> Design documents, internal info, guides and help. (P3 - Medium) Medium (normal) priority SDL: Tiles / Sound Tiles visual interface and sounds.

Comments

@I-am-Erk
Copy link
Contributor

Is your feature request related to a problem? Please describe.
It is very difficult to get a complete list of what is missing from a tileset, in a helpful format. This is a major boundary to making a complete tileset. The game does know how to produce this data, because it's pumped out in a hard-to-read debug file.

Describe the solution you'd like
A debug menu command with several options to output missing graphics for:

  • items (not worn/wielded)
  • items (worn/wielded only)
  • terrain/furniture
  • monsters
  • players/npcs and mutations
  • vehicle parts

Each output would create a CSV entry with the following columns:

  • ID of tile
  • looks_like entry for tile
  • Does the tile have a unique graphic?
  • Does the tile have a looks_like graphic?
  • Does the tile have multiple graphics?

Describe alternatives you've considered
This could be done with a script, but doing it in-game means the json entries are already parsed. Should be easier.

Additional context
This is one of several suggestions to make graphical content contribution more accessible.

@I-am-Erk I-am-Erk added <Documentation> Design documents, internal info, guides and help. SDL: Tiles / Sound Tiles visual interface and sounds. Code: Tests Measurement, self-control, statistics, balancing. (P3 - Medium) Medium (normal) priority labels Sep 25, 2019
@I-am-Erk I-am-Erk added this to To do in Better Tileset Implementation via automation Sep 25, 2019
@mlangsdorf mlangsdorf self-assigned this Oct 4, 2019
@mlangsdorf
Copy link
Contributor

I'll look into this. Do you want the data like this:
mjlonir, hammer_sledge, No, No, No, hammer_sledge, hammer, Yes, Yes, Yes,
or
mjlonir hammer_sledge No No No, hammer_sledge hammer Yes Yes Yes,

ie, should the CSV separate every value or just id groups?

also, should we try and spit out invalid ids, like overlay_worn_t_swater_winter

@I-am-Erk
Copy link
Contributor Author

I-am-Erk commented Oct 4, 2019

I think separate each value in case we want to sort by a particular value.
I'd include invalid ids, I assume that would be for things like scarves that are tight vs loose?

@snipercup
Copy link
Contributor

@I-am-Erk you saw my post on Reddit. I started working on your idea. I published it here: https://github.com/snipercup/CCDA-JS-data-browser. Follow the installation instructions and afterwards open tile_missing_sprite.html, select a item type and press OK. It will produce a list of items that do not appear in gfx\ChestHole16Tileset\tile_config.json. That's the file I should be comparing with right?

It is very limited right now. It's only checking for missing sprites of items, and only in the chesthole16 tileset. I'm just giving an update right now to see if i'm on track. Please provide feedback and correct anything that is not what you had in mind.

@anothersimulacrum
Copy link
Contributor

anothersimulacrum commented Oct 7, 2019

Preferably this would be any tileset config file (you could choose), but good work!

@snipercup
Copy link
Contributor

@I-am-Erk Update: I added the option to select a tileset. Please review if this is what you want. Next step is to also include furniture, terrain and the rest.

@I-am-Erk
Copy link
Contributor Author

I-am-Erk commented Oct 8, 2019

I think it's a start... I'll take a look but I'm not sure I can get javascript to run on a work computer. Outputting to csv is something I really want so that I can make spreadsheet checklists of sprites needed

@snipercup
Copy link
Contributor

@I-am-Erk I just checked and outputting to CSV is possible. Do you have another machine you can use it on?

@I-am-Erk
Copy link
Contributor Author

I-am-Erk commented Oct 8, 2019

OK, got it working on computer. Yeah, it does a good job of listing the tiles, but I was hoping for more information than this as described in the OP, and for the ability to export it all to a comma delineated spreadsheet which it sounds like you can work out.

Still it works well as a JS rather than a debug tool. If you can get it working for the other fields it would probably satisfy the requirements.

@snipercup
Copy link
Contributor

It's not done yet, ill keep you updated on the progress.

@snipercup
Copy link
Contributor

Update, added the following:

  • Terrain tiles can now be matched against tile config
  • The result can be exported to CSV although after doing that you have to rename the file to a .csv file
  • Added looks_like to the results

If you select terrain you can ignore the item type. It will take any terrain and not a selection
I don't know where to get this info

Does the tile have a unique graphic?
Does the tile have a looks_like graphic?
Does the tile have multiple graphics?

In what file should I look for that?

@mlangsdorf mlangsdorf removed their assignment Nov 7, 2019
Better Tileset Implementation automation moved this from To do to Done Apr 22, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Code: Tests Measurement, self-control, statistics, balancing. <Documentation> Design documents, internal info, guides and help. (P3 - Medium) Medium (normal) priority SDL: Tiles / Sound Tiles visual interface and sounds.
Development

No branches or pull requests

4 participants