GRF encoder tool: GRFMaker [under development]

Discussions about the technical aspects of graphics development, including NewGRF tools and utilities.

Moderator: Graphics Moderators

michael blunck
Tycoon
Tycoon
Posts: 5954
Joined: 27 Apr 2005 07:09
Contact:

Re: GRF encoder tool: GRFMaker [under development]

Post by michael blunck »

andythenorth wrote: [...] For all that, a web-based tool would likely be limited to a handful of 'standard' methods in terms of callbacks, graphics etc, so it would not be useful for anything other than 'standardised' vehicles. :twisted:
For anything more it´d need a good portion of AI. :twisted:

regards
Michael
Image
User avatar
Sylf
President
President
Posts: 957
Joined: 23 Nov 2010 21:25
Location: ::1

Re: GRF encoder tool: GRFMaker [under development]

Post by Sylf »

andythenorth wrote:The primary issue is that users would want to keep their entire set (graphics and configuration data) in the web-based tool. That means:
  • would need persistent storage (database) for the data, and for the graphics (potentially large)
  • there would need to be some accounts and log in system
  • some sets are multi-author, so there would need to be projects
  • there would need to be backups
  • despite being persistent, it would likely need import/export
  • probably users would pretty quickly want undo / history
This makes me wonder if one can write such a system as an add-on to Redmine, which powers dev.openttdcoop.org. That would take care of login, project, version tracking (undo).
User avatar
kamnet
Moderator
Moderator
Posts: 8665
Joined: 28 Sep 2009 17:15
Location: Eastern KY
Contact:

Re: GRF encoder tool: GRFMaker [under development]

Post by kamnet »

Of course, the reason this system fails is because everybody will create vehicles that have instant velocity and travels on all tracks and are 400x faster than maglevs and hauls 1.25 million of anything simultaneously.

It's a dumb idea. *bins it*
User avatar
Bob_Mackenzie
Chairman
Chairman
Posts: 823
Joined: 25 Mar 2010 13:36

Re: GRF encoder tool: GRFMaker [under development]

Post by Bob_Mackenzie »

For all that, a web-based tool would likely be limited to a handful of 'standard' methods in terms of callbacks, graphics etc, so it would not be useful for anything other than 'standardised' vehicles. :twisted:
I don't think a tool needs be web based - its ease of use that is important

Also I guess many programming challenged people would welcome the chance just to do standardised vehicles, though that rather depends on what the standardised features were...
User avatar
planetmaker
OpenTTD Developer
OpenTTD Developer
Posts: 9432
Joined: 07 Nov 2007 22:44
Location: Sol d

Re: GRF encoder tool: GRFMaker [under development]

Post by planetmaker »

Sylf wrote:
andythenorth wrote:The primary issue is that users would want to keep their entire set (graphics and configuration data) in the web-based tool. That means:
  • would need persistent storage (database) for the data, and for the graphics (potentially large)
  • there would need to be some accounts and log in system
  • some sets are multi-author, so there would need to be projects
  • there would need to be backups
  • despite being persistent, it would likely need import/export
  • probably users would pretty quickly want undo / history
This makes me wonder if one can write such a system as an add-on to Redmine, which powers dev.openttdcoop.org. That would take care of login, project, version tracking (undo).
Yes... that would be possible. The currently-used web front-end to the repositories, https://kallithea.openttdcoop.org allows already in principle to edit the repository via the web frontend as well as to upload files to the repositories to logged-in people. It's just that no-one has a login there, as #openttdcoop has no unified identity service, thus it would be yet another service where people would need registering - which would need exactly the same permissions and users as redmin - thus a single sign-on is basically the stumbling stone here. Tieng a build trigger to a commit done there is possible. Thus if one sticks to a pre-defined format, it would likely be not overly compliccated to create such project

Undo is no concern when you have repositories - or you simply reset for e.g. not-logged-in people (but that'd be a pain with graphics to reverted.

Before that (or concurrently, I don't recall), I experimented a bit with an interface to jenkins which at least does the automatic build for you when you upload a zip which contains everything needed to build your grf from (and which follows a certain form of course): https://jenkins.openttdcoop.org/view/De ... load-test/ - but I didn't quite consider that too useful... it still requires you to get everything right and the only thing which could be skipped is the installation of the build tools; thus you'd be uploading megabytes for megabytes for every single typo you do in your code.

I'm actually unsure as to what "the best" interface would look like or should look like... if someone is eager in trying to implement something like that here, I'm happy to be of service.
Alberth
OpenTTD Developer
OpenTTD Developer
Posts: 4763
Joined: 09 Sep 2007 05:03
Location: home

Re: GRF encoder tool: GRFMaker [under development]

Post by Alberth »

Wouldn't "version tracking" already break the goal of "easy to use"? ("clone, "commit", "push" aren't exactly trivial, and then we haven't even done anything with making an error somewhere)

Perhaps simpler is a more pre-made NML file and graphics template. Treat as much as possible to be "fixed template magic text", with a clear pointer where something must be changed, and an explanation what must be changed with examples (and register the examples at Bananas to avoid problems).

As first guess, an NML file with just GRF-ID and space to copy vehicle templates. (no grf parameters, not compatible with previous versions, only speed, model life. and TE for each vehicle)
Also a template NML file for each useful length of vehicle, and a graphic template, where the vehicle-images must be put in the exact right position (perhaps such that pixeltool output works?)
Make distinct template for each type of vehicle, even if the template content is otherwise the same.

It only requires only a text-editor and NML then.


Make a YouTube movie showing download+install of text editor and nml compiler.

Make a YouTube movie showing making a grf with eg 2 vehicles of different length,

EDIT:
Make a YouTube movie installing and testing the grf.

Make a Youtube movie uploading to bananas.
Being a retired OpenTTD developer does not mean I know what I am doing.
pbarrene
Engineer
Engineer
Posts: 1
Joined: 01 Jul 2018 18:40

Re: GRF encoder tool: GRFMaker [under development]

Post by pbarrene »


Hi I'm new at creating newgrfsm, but I've been reading about GRF Maker and I think I understand how it works. The only thing I still don't understand (and I haven't found any tutorials) how to draw the locomotives, wagons, cars...
Can anybody tell me how to draw them, or some usefull app?
User avatar
acs121
Tycoon
Tycoon
Posts: 1962
Joined: 03 Nov 2017 18:57
Location: Courbevoie, near Paris, France

Re: GRF encoder tool: GRFMaker [under development]

Post by acs121 »

pbarrene wrote:Hi I'm new at creating newgrfsm, but I've been reading about GRF Maker and I think I understand how it works. The only thing I still don't understand (and I haven't found any tutorials) how to draw the locomotives, wagons, cars...
Can anybody tell me how to draw them, or some usefull app?
You need to use the bmp format (BITMAP) and add a palette.
User avatar
Emperor Jake
Tycoon
Tycoon
Posts: 3437
Joined: 24 Apr 2007 09:37
Skype: Discord: Emperor Jake #4106
Location: Not Actually Japan
Contact:

Re: GRF encoder tool: GRFMaker [under development]

Post by Emperor Jake »

pbarrene wrote:Hi I'm new at creating newgrfsm, but I've been reading about GRF Maker and I think I understand how it works. The only thing I still don't understand (and I haven't found any tutorials) how to draw the locomotives, wagons, cars...
Can anybody tell me how to draw them, or some usefull app?
Allow me to direct you to Purno's drawing tutorial. Just ignore the windows palette, use the DOS one instead. As for software, just use any image editing software you're familiar with such as Photoshop, GIMP or Paint.net.
User avatar
HoratioNelson
Engineer
Engineer
Posts: 14
Joined: 09 Apr 2022 00:52
Location: Florida

Re: GRF encoder tool: GRFMaker [under development]

Post by HoratioNelson »

Hello,
I know this topic has not been used for a while, but is there a version of or equivalent to this program that can be used on a Mac?
Auge
Chief Executive
Chief Executive
Posts: 652
Joined: 23 Oct 2006 02:07
Location: Berlin

Re: GRF encoder tool: GRFMaker [under development]

Post by Auge »

HoratioNelson wrote: 16 May 2023 00:48 Hello,
I know this topic has not been used for a while, but is there a version of or equivalent to this program that can be used on a Mac?
There is nml, which is a Python program, installable with the Python-package-manager pip. It compiles code, written in NML language (or NFO), to NewGRFs.

Tschö, Auge
Post Reply

Return to “NewGRF Technical Discussions”

Who is online

Users browsing this forum: No registered users and 2 guests