Discuss, get help with, or post new graphics for TTDPatch and OpenTTD, using the NewGRF system, here. Graphics for plain TTD also acceptable here.
Moderator: Graphics Moderators
Maddog45353
Engineer
Posts: 112 Joined: 26 Jun 2013 09:00
Post
by Maddog45353 » 01 Oct 2016 04:24
So i am trying to find the running cost and purchase costs in a NFO of a grf i am working/editing on but i can't seem to find the proper value.
I have learned NML for town names and making a town name grf right now with 5000 town names that are most populated in real life.
But i need help changing running and purchase costs in a vehicle.
Also what's the best way to edit NFO files cause some have weird symbols still?
Like in the ogfx1_base.grf one there is this line
[+] Spoiler Code: Select all
799 * 257 00 00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F 10 11 12 13 14 15 16 17 18 19 1A 1B 1C 1D 1E
1F " !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEF``abcdefgP"
"QRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~" 7F
80 81 82 83 84 85 86 87 88 89 8A 8B 8C 8D 8E 8F 90 91 92 93 94 95 96 97 98 99 9A 9B 9C 9D 9E "Ÿ ¡¢£¤¥¦§¨©ª«¬®¯°±"
"²³´µ¶·¸¹º»¼½¾¿ÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖ×ØÙÚÛÜÝÞßàáâã"
"äåæçèéêëìíîïðñòóôõö÷øùúûüýþÿ"
So is it possible to read that code or no?
LoneBlackWolf
NekoMaster
Tycoon
Posts: 4001 Joined: 16 Aug 2008 22:26
Skype: neko-master
Location: Oshawa, Ontario, CANADA
Post
by NekoMaster » 01 Oct 2016 05:43
I just started with NML my self but I already figured out running and purchase costs.
in your vehicle nml files (example, src/diesel/Locomotive_Model.pnml) you'll find the lines below
Code: Select all
cost_factor: 28;
running_cost_factor: 200;
they dont have exact monetary values, so you'll have to change those numbers, compile, and see the cost changes in game by loading up your compiled grf.
If anything, I've found you can compile a grf while the game is running and from the NewGRF settings window just hit Apply CHanges after your code compiles and you paste the grf in your data folder.
Maddog45353
Engineer
Posts: 112 Joined: 26 Jun 2013 09:00
Post
by Maddog45353 » 01 Oct 2016 05:58
NekoMaster wrote: I just started with NML my self but I already figured out running and purchase costs.
in your vehicle nml files (example, src/diesel/Locomotive_Model.pnml) you'll find the lines below
Code: Select all
cost_factor: 28;
running_cost_factor: 200;
they dont have exact monetary values, so you'll have to change those numbers, compile, and see the cost changes in game by loading up your compiled grf.
If anything, I've found you can compile a grf while the game is running and from the NewGRF settings window just hit Apply CHanges after your code compiles and you paste the grf in your data folder.
Ah i should mention i need to find it in NFO file not PNML or NML.
LoneBlackWolf
Alberth
OpenTTD Developer
Posts: 4763 Joined: 09 Sep 2007 05:03
Location: home
Post
by Alberth » 01 Oct 2016 11:03
Maddog45353 wrote: But i need help changing running and purchase costs in a vehicle.
Afaik you can modify properties of stuff provided by other newgrfs. No idea if that includes vehicles, or whether you can code that in NML, but it seems like a simpler route to me than trying to make sense of pages of hexadecimal numbers.
Maddog45353 wrote: Also what's the best way to edit NFO files cause some have weird symbols still?
Like in the ogfx1_base.grf one there is this line
[+] Spoiler Code: Select all
799 * 257 00 00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F 10 11 12 13 14 15 16 17 18 19 1A 1B 1C 1D 1E
1F " !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEF``abcdefgP"
"QRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~" 7F
80 81 82 83 84 85 86 87 88 89 8A 8B 8C 8D 8E 8F 90 91 92 93 94 95 96 97 98 99 9A 9B 9C 9D 9E "Ÿ ¡¢£¤¥¦§¨©ª«¬®¯°±"
"²³´µ¶·¸¹º»¼½¾¿ÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖ×ØÙÚÛÜÝÞßàáâã"
"äåæçèéêëìíîïðñòóôõö÷øùúûüýþÿ"
So is it possible to read that code or no?
Just use the source code:
https://dev.openttdcoop.org/projects/opengfx
To edit such files, you need a text-editor that supports the encoding of the file that you edit. NML always uses UTF-8 encoding afaik. Don't know what grfcodec uses, but chances are that it also uses UTF-8 encoding.
Most modern editors support this encoding, but the name of it at the GUI is not always clear. Some editor use the correct UTF-8 name, other incorrectly say "Unicode".
The simplest way to check is to decode a grf, make a trivial change like adding a space character, save, and build the grf again from the saved file. Size and hash of the resulting grf should be the same as what you started with.
Being a retired OpenTTD developer does not mean I know what I am doing.
Maddog45353
Engineer
Posts: 112 Joined: 26 Jun 2013 09:00
Post
by Maddog45353 » 02 Oct 2016 03:53
Alberth wrote: Maddog45353 wrote: But i need help changing running and purchase costs in a vehicle.
Afaik you can modify properties of stuff provided by other newgrfs. No idea if that includes vehicles, or whether you can code that in NML, but it seems like a simpler route to me than trying to make sense of pages of hexadecimal numbers.
Maddog45353 wrote: Also what's the best way to edit NFO files cause some have weird symbols still?
Like in the ogfx1_base.grf one there is this line
[+] Spoiler Code: Select all
799 * 257 00 00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F 10 11 12 13 14 15 16 17 18 19 1A 1B 1C 1D 1E
1F " !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEF``abcdefgP"
"QRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~" 7F
80 81 82 83 84 85 86 87 88 89 8A 8B 8C 8D 8E 8F 90 91 92 93 94 95 96 97 98 99 9A 9B 9C 9D 9E "Ÿ ¡¢£¤¥¦§¨©ª«¬®¯°±"
"²³´µ¶·¸¹º»¼½¾¿ÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖ×ØÙÚÛÜÝÞßàáâã"
"äåæçèéêëìíîïðñòóôõö÷øùúûüýþÿ"
So is it possible to read that code or no?
Just use the source code:
https://dev.openttdcoop.org/projects/opengfx
To edit such files, you need a text-editor that supports the encoding of the file that you edit. NML always uses UTF-8 encoding afaik. Don't know what grfcodec uses, but chances are that it also uses UTF-8 encoding.
Most modern editors support this encoding, but the name of it at the GUI is not always clear. Some editor use the correct UTF-8 name, other incorrectly say "Unicode".
The simplest way to check is to decode a grf, make a trivial change like adding a space character, save, and build the grf again from the saved file. Size and hash of the resulting grf should be the same as what you started with.
So to no avail I'm gonna post a little bit of nars2's decompiled nfo file and if you could point out where the costs are in it.
Large Spoiler below.
I hope i am not breaking any rules or anything i just can't seem to understand the nfo file, if only i could make it nml converted.
Where is action0 or the running cost/purchase costs action in this code for the Norris?
[+] Spoiler Code: Select all
// Automatically generated by GRFCODEC. Do not modify!
// (Info version 32)
// Escapes: 2+ 2- 2< 2> 2u< 2u> 2/ 2% 2u/ 2u% 2* 2& 2| 2^ 2sto = 2s 2rst = 2r 2psto 2ror = 2rot 2cmp 2ucmp 2<< 2u>> 2>>
// Escapes: 71 70 7= 7! 7< 7> 7G 7g 7gG 7GG 7gg 7c 7C
// Escapes: D= = DR D+ = DF D- = DC Du* = DM D* = DnF Du<< = DnC D<< = DO D& D| Du/ D/ Du% D%
// Format: spritenum imagefile depth xpos ypos xsize ysize xrel yrel zoom flags
0 * 4 A0 1B 00 00
1 * 19 14 "CINFOBVRSN" 04 00 FB 00 00 00 00 00
2 * 19 14 "CINFOBMINV" 04 00 FA 00 00 00 00 00
3 * 16 14 "CINFOBPALS" 01 00 57 00 00
4 * 195 14 "CINFOBNPAR" 01 00 01 "CPARAC" 00 00 00 00 "TNAME" 7F "Reduce "
"vehicle costs" 00 "TDESC" 7F "Halve the purchase "
"and running costs of all trains. "
"This may be useful if you want a "
"faster or easier game." 00 "BMASK" 03 00 00 00
01 "BTYPE" 01 00 01 "BDFLT" 01 00 00 00 00 00 00
5 * 221 08 08 "DD" 03 02 "North American Railway Set "
"(NARS) 2.51" 00 94 "Version " 95 "2.51 - April "
"2015" 0D 0D 94 "Coded by " 95 "David Dallaston, "
94 "graphics by " 95 "Dan MacKellar " 94 "and "
95 "David Dallaston. " 94 "Special thanks "
"to " 95 "all the developers " 94 "of " 95 "TTDPatch "
94 "and " 95 "OpenTTD." 00
6 * 22 00 08 01 04 00 12 "RAILELRLMONOMGLV"
7 * 194 00 08 01 2F 00 09 "PASSCOALMAILOIL_LVSTGOODGRAIWOODIORESTELVALU"
"PAPRFOODFRUTCOREWATRRUBRTWODWHEAMAIZGOLDDIAMFERTVE"
"HICOPRWDPRPLASTOURPETRSCMTENSPFMSPMNSPBEERAOREBDMT"
"SGCNSGBTRFPRCLAYFICRGRVLMILKRCYCSANDFISHWOOL"
8 * 6 09 00 01 \71 00 04
9 * 7 00 08 01 01 0F 08 07
10 * 7 00 08 01 01 2A 08 0C
11 * 7 00 08 01 01 10 08 0B
12 * 7 00 08 01 01 2B 08 05
13 * 6 09 00 01 \70 00 04
14 * 7 00 08 01 01 0F 08 06
15 * 7 00 08 01 01 2A 08 0B
16 * 7 00 08 01 01 10 08 0A
17 * 7 00 08 01 01 2B 08 04
18 * 9 0D 0A \D= 11 FE FF FF 00 00
19 * 9 0D 8E \D= FF 00 02 00 00 00
20 * 9 0D 9E \D| 9E FF 08 00 00 00
21 * 3 11 07 00
22 ** NARS/silence.wav
23 ** NARS/whistle.wav
24 ** NARS/chime.wav
25 ** NARS/dwhistle.wav
26 ** NARS/horn.wav
27 ** NARS/bighorn.wav
28 ** NARS/turbo_horn.wav
29 * 16 02 00 80 85 7F 0A 40 FF FF 00 00 01 00 00 00 80
30 * 17 02 00 82 85 7F 0A 20 FF FF \2+ 1C 00 FF FF 00 00 80
31 * 14 02 00 82 81 43 18 FF 01 82 00 00 00 82 00
32 * 17 02 00 84 85 7F 0A 20 FF FF \2+ 1C 04 FF FF 00 00 80
33 * 14 02 00 84 81 43 18 F0 01 84 00 00 00 84 00
34 * 16 02 00 85 85 7F 0A 40 FF FF 80 00 01 00 00 00 80
35 * 16 02 00 86 85 7F 0A 40 FF FF 08 00 01 00 00 00 80
36 * 16 02 00 87 85 7F 0A 40 FF FF 88 00 01 00 00 00 80
37 * 16 02 00 88 85 7F 0A "@ ≡" 00 01 00 00 00 80
38 * 16 02 00 89 85 7F 0A 40 FF FF 03 00 01 00 00 00 80
39 * 16 02 00 8A 85 7F 0A "@ 0" 00 01 00 00 00 80
40 * 16 02 00 8B 85 7F 0A 40 FF FF 04 00 01 00 00 00 80
41 * 16 02 00 8C 85 7F 0A "@ @" 00 01 00 00 00 80
42 * 16 02 00 8D 85 7F 0A 40 FF FF 0D 00 01 00 00 00 80
43 * 16 02 00 8E 85 7F 0A "@ α" 00 01 00 00 00 80
44 * 16 02 00 8F 85 7F 0A 40 FF FF 0E 00 01 00 00 00 80
45 * 39 02 00 90 80 00 00 10 80 00 80 00 82 00 82 00 84 00 85 00 86 00 87 00 88 00 89 00 8A 00 8B 00 8C
00 8D 00 8E 00 8F 00
46 * 16 02 00 80 85 7F 0A 40 FF FF 11 00 01 00 00 00 80
47 * 17 02 00 82 85 7F 0A 20 FF FF \2+ 1C 00 FF FF 00 00 80
48 * 14 02 00 82 81 43 18 FF 01 82 00 00 00 82 00
49 * 21 02 00 85 85 7F 0A 60 FF FF 10 00 01 00 \2+ 1C 04 FF FF 00 00 80
50 * 14 02 00 85 81 43 18 F0 01 85 00 00 00 85 00
51 * 16 02 00 86 85 7F 0A 40 FF FF 17 00 01 00 00 00 80
52 * 16 02 00 87 85 7F 0A "@ q" 00 01 00 00 00 80
53 * 16 02 00 88 85 7F 0A 40 FF FF 16 00 01 00 00 00 80
54 * 16 02 00 89 85 7F 0A "@ a" 00 01 00 00 00 80
55 * 16 02 00 8A 85 7F 0A "@ ╤" 00 01 00 00 00 80
56 * 16 02 00 8D 85 7F 0A 40 FF FF 1D 00 01 00 00 00 80
57 * 16 02 00 8E 85 7F 0A "@ ±" 00 01 00 00 00 80
58 * 16 02 00 8F 85 7F 0A "@ ┴" 00 01 00 00 00 80
59 * 39 02 00 91 80 00 00 10 80 00 80 00 82 00 82 00 85 00 85 00 86 00 87 00 88 00 89 00 8A 00 8D 00 8D
00 8D 00 8E 00 8F 00
60 * 16 02 00 80 85 7F 0A "@ \"" 00 01 00 00 00 80
61 * 17 02 00 81 85 7F 0A 20 FF FF \2+ 1C 00 FF FF 00 00 80
62 * 14 02 00 81 81 43 18 FF 01 81 00 00 00 81 00
63 * 21 02 00 82 85 7F 0A "` " 00 01 00 \2+ 1C 04 FF FF 00 00 80
64 * 14 02 00 82 81 43 18 F0 01 82 00 00 00 82 00
65 * 16 02 00 83 85 7F 0A 40 FF FF 82 00 01 00 00 00 80
66 * 16 02 00 84 85 7F 0A "@ (" 00 01 00 00 00 80
67 * 16 02 00 85 85 7F 0A "@ /" 00 01 00 00 00 80
68 * 16 02 00 86 85 7F 0A "@ ≥" 00 01 00 00 00 80
69 * 16 02 00 87 85 7F 0A "@ ┐" 00 01 00 00 00 80
70 * 23 02 00 92 80 00 00 08 80 00 81 00 82 00 83 00 84 00 85 00 86 00 87 00
71 * 16 02 00 80 85 7F 0A "@ 3" 00 01 00 00 00 80
72 * 17 02 00 81 85 7F 0A 20 FF FF \2+ 1C 00 FF FF 00 00 80
73 * 14 02 00 81 81 43 18 FF 01 81 00 00 00 81 00
74 * 21 02 00 82 85 7F 0A "` 0" 00 01 00 \2+ 1C 04 FF FF 00 00 80
75 * 14 02 00 82 81 43 18 F0 01 82 00 00 00 82 00
76 * 16 02 00 83 85 7F 0A 40 FF FF 03 00 01 00 00 00 80
77 * 16 02 00 84 85 7F 0A "@ ≤" 00 01 00 00 00 80
78 * 16 02 00 85 85 7F 0A "@ >" 00 01 00 00 00 80
79 * 16 02 00 86 85 7F 0A "@ =" 00 01 00 00 00 80
80 * 16 02 00 87 85 7F 0A "@ ╙" 00 01 00 00 00 80
81 * 23 02 00 93 80 00 00 08 80 00 81 00 82 00 83 00 84 00 85 00 86 00 87 00
82 * 16 02 00 80 85 7F 0A "@ D" 00 01 00 00 00 80
83 * 17 02 00 81 85 7F 0A 20 FF FF \2+ 1C 00 FF FF 00 00 80
84 * 14 02 00 81 81 43 18 FF 01 81 00 00 00 81 00
85 * 21 02 00 82 85 7F 0A "` @" 00 01 00 \2+ 1C 04 FF FF 00 00 80
86 * 14 02 00 82 81 43 18 F0 01 82 00 00 00 82 00
87 * 16 02 00 83 85 7F 0A "@ ⌠" 00 01 00 00 00 80
88 * 16 02 00 84 85 7F 0A "@ O" 00 01 00 00 00 80
89 * 16 02 00 85 85 7F 0A "@ N" 00 01 00 00 00 80
90 * 16 02 00 86 85 7F 0A "@ M" 00 01 00 00 00 80
91 * 16 02 00 87 85 7F 0A "@ ╘" 00 01 00 00 00 80
92 * 23 02 00 94 80 00 00 08 80 00 81 00 82 00 83 00 84 00 85 00 86 00 87 00
93 * 16 02 00 80 85 7F 0A "@ U" 00 01 00 00 00 80
94 * 17 02 00 81 85 7F 0A 20 FF FF \2+ 1C 00 FF FF 00 00 80
95 * 14 02 00 81 81 43 18 FF 01 81 00 00 00 81 00
96 * 21 02 00 82 85 7F 0A "` P" 00 01 00 \2+ 1C 04 FF FF 00 00 80
97 * 14 02 00 82 81 43 18 F0 01 82 00 00 00 82 00
98 * 16 02 00 83 85 7F 0A 40 FF FF 85 00 01 00 00 00 80
99 * 16 02 00 84 85 7F 0A "@ σ" 00 01 00 00 00 80
100 * 16 02 00 85 85 7F 0A "@ ^" 00 01 00 00 00 80
101 * 16 02 00 86 85 7F 0A "@ ε" 00 01 00 00 00 80
102 * 16 02 00 87 85 7F 0A "@ ⌡" 00 01 00 00 00 80
103 * 23 02 00 95 80 00 00 08 80 00 81 00 82 00 83 00 84 00 85 00 86 00 87 00
104 * 16 02 00 80 85 7F 0A "@ f" 00 01 00 00 00 80
105 * 17 02 00 81 85 7F 0A 20 FF FF \2+ 1C 00 FF FF 00 00 80
106 * 14 02 00 81 81 43 18 FF 01 81 00 00 00 81 00
107 * 21 02 00 82 85 7F 0A "` `" 00 01 00 \2+ 1C 04 FF FF 00 00 80
108 * 14 02 00 82 81 43 18 F0 01 82 00 00 00 82 00
109 * 16 02 00 83 85 7F 0A "@ g" 00 01 00 00 00 80
110 * 16 02 00 84 85 7F 0A "@ v" 00 01 00 00 00 80
111 * 16 02 00 85 85 7F 0A "@ o" 00 01 00 00 00 80
112 * 16 02 00 86 85 7F 0A "@ m" 00 01 00 00 00 80
113 * 16 02 00 87 85 7F 0A "@ ╓" 00 01 00 00 00 80
114 * 23 02 00 96 80 00 00 08 80 00 81 00 82 00 83 00 84 00 85 00 86 00 87 00
115 * 16 02 00 80 85 7F 0A "@ w" 00 01 00 00 00 80
116 * 17 02 00 82 85 7F 0A 20 FF FF \2+ 1C 00 FF FF 00 00 80
117 * 14 02 00 82 81 43 18 FF 01 82 00 00 00 82 00
118 * 21 02 00 85 85 7F 0A "` p" 00 01 00 \2+ 1C 04 FF FF 00 00 80
119 * 14 02 00 85 81 43 18 F0 01 85 00 00 00 85 00
120 * 16 02 00 86 85 7F 0A 40 FF FF 17 00 01 00 00 00 80
121 * 16 02 00 87 85 7F 0A "@ q" 00 01 00 00 00 80
122 * 16 02 00 88 85 7F 0A "@ v" 00 01 00 00 00 80
123 * 16 02 00 89 85 7F 0A "@ g" 00 01 00 00 00 80
124 * 16 02 00 8A 85 7F 0A "@ ╫" 00 01 00 00 00 80
125 * 16 02 00 8D 85 7F 0A "@ }" 00 01 00 00 00 80
126 * 16 02 00 8E 85 7F 0A "@ ≈" 00 01 00 00 00 80
127 * 16 02 00 8F 85 7F 0A "@ ╟" 00 01 00 00 00 80
128 * 39 02 00 97 80 00 00 10 80 00 80 00 82 00 82 00 85 00 85 00 86 00 87 00 88 00 89 00 8A 00 8D 00 8D
00 8D 00 8E 00 8F 00
129 * 16 02 00 80 85 7F 0A 40 FF FF 88 00 01 00 00 00 80
130 * 17 02 00 82 85 7F 0A 20 FF FF \2+ 1C 00 FF FF 00 00 80
131 * 14 02 00 82 81 43 18 FF 01 82 00 00 00 82 00
132 * 21 02 00 84 85 7F 0A 60 FF FF 80 00 01 00 \2+ 1C 04 FF FF 00 00 80
133 * 14 02 00 84 81 43 18 F0 01 85 00 00 00 84 00
134 * 16 02 00 85 85 7F 0A 40 FF FF 80 00 01 00 00 00 80
135 * 16 02 00 86 85 7F 0A 40 FF FF 08 00 01 00 00 00 80
136 * 16 02 00 87 85 7F 0A 40 FF FF 85 00 01 00 00 00 80
137 * 16 02 00 88 85 7F 0A "@ U" 00 01 00 00 00 80
138 * 16 02 00 89 85 7F 0A "@ °" 00 01 00 00 00 80
139 * 16 02 00 8A 85 7F 0A 40 FF FF 8F 00 01 00 00 00 80
140 * 16 02 00 8B 85 7F 0A "@ 8" 00 01 00 00 00 80
141 * 16 02 00 8C 85 7F 0A 40 FF FF 8D 00 01 00 00 00 80
142 * 16 02 00 8D 85 7F 0A "@ ╪" 00 01 00 00 00 80
143 * 16 02 00 8E 85 7F 0A "@ Φ" 00 01 00 00 00 80
144 * 16 02 00 8F 85 7F 0A 40 FF FF 8E 00 01 00 00 00 80
145 * 39 02 00 98 80 00 00 10 80 00 80 00 82 00 82 00 84 00 85 00 86 00 87 00 88 00 89 00 8A 00 8B 00 8C
00 8D 00 8E 00 8F 00
146 * 16 02 00 80 85 7F 0A 40 FF FF 99 00 01 00 00 00 80
147 * 17 02 00 81 85 7F 0A 20 FF FF \2+ 1C 00 FF FF 00 00 80
148 * 14 02 00 81 81 43 18 FF 01 81 00 00 00 81 00
149 * 21 02 00 82 85 7F 0A 60 FF FF 90 00 01 00 \2+ 1C 04 FF FF 00 00 80
150 * 14 02 00 82 81 43 18 F0 01 82 00 00 00 82 00
151 * 16 02 00 83 85 7F 0A "@ Y" 00 01 00 00 00 80
152 * 16 02 00 84 85 7F 0A "@ ∙" 00 01 00 00 00 80
153 * 16 02 00 85 85 7F 0A "@ ƒ" 00 01 00 00 00 80
154 * 16 02 00 86 85 7F 0A "@ ε" 00 01 00 00 00 80
155 * 16 02 00 87 85 7F 0A 40 FF FF 9E 00 01 00 00 00 80
156 * 23 02 00 99 80 00 00 08 80 00 81 00 82 00 83 00 84 00 85 00 86 00 87 00
157 * 16 02 00 80 85 7F 0A "@ ¬" 00 01 00 00 00 80
158 * 17 02 00 81 85 7F 0A 20 FF FF \2+ 1C 00 FF FF 00 00 80
159 * 14 02 00 81 81 43 18 FF 01 81 00 00 00 81 00
160 * 21 02 00 82 85 7F 0A "` á" 00 01 00 \2+ 1C 04 FF FF 00 00 80
161 * 14 02 00 82 81 43 18 F0 01 82 00 00 00 82 00
162 * 16 02 00 83 85 7F 0A "@ :" 00 01 00 00 00 80
163 * 16 02 00 84 85 7F 0A "@ ·" 00 01 00 00 00 80
164 * 16 02 00 85 85 7F 0A "@ »" 00 01 00 00 00 80
165 * 16 02 00 86 85 7F 0A "@ Ω" 00 01 00 00 00 80
166 * 16 02 00 87 85 7F 0A "@ «" 00 01 00 00 00 80
167 * 23 02 00 9A 80 00 00 08 80 00 81 00 82 00 83 00 84 00 85 00 86 00 87 00
168 * 16 02 00 80 85 7F 0A "@ ╗" 00 01 00 00 00 80
169 * 17 02 00 81 85 7F 0A 20 FF FF \2+ 1C 00 FF FF 00 00 80
170 * 14 02 00 81 81 43 18 FF 01 81 00 00 00 81 00
171 * 21 02 00 82 85 7F 0A "` ░" 00 01 00 \2+ 1C 04 FF FF 00 00 80
172 * 14 02 00 82 81 43 18 F0 01 82 00 00 00 82 00
173 * 16 02 00 83 85 7F 0A 40 FF FF 8B 00 01 00 00 00 80
174 * 16 02 00 84 85 7F 0A "@ ¬" 00 01 00 00 00 80
175 * 16 02 00 85 85 7F 0A "@ " 00 01 00 00 00 80
176 * 16 02 00 86 85 7F 0A "@ ▓" 00 01 00 00 00 80
177 * 16 02 00 87 85 7F 0A "@ ┐" 00 01 00 00 00 80
178 * 23 02 00 9B 80 00 00 08 80 00 81 00 82 00 83 00 84 00 85 00 86 00 87 00
179 * 16 02 00 80 85 7F 0A "@ ╠" 00 01 00 00 00 80
180 * 17 02 00 81 85 7F 0A 20 FF FF \2+ 1C 00 FF FF 00 00 80
181 * 14 02 00 81 81 43 18 FF 01 81 00 00 00 81 00
182 * 21 02 00 82 85 7F 0A "` └" 00 01 00 \2+ 1C 04 FF FF 00 00 80
183 * 14 02 00 82 81 43 18 F0 01 82 00 00 00 82 00
184 * 16 02 00 83 85 7F 0A "@ |" 00 01 00 00 00 80
185 * 16 02 00 84 85 7F 0A "@ ═" 00 01 00 00 00 80
186 * 16 02 00 85 85 7F 0A "@ ▄" 00 01 00 00 00 80
187 * 16 02 00 86 85 7F 0A "@ ⁿ" 00 01 00 00 00 80
188 * 16 02 00 87 85 7F 0A "@ ╧" 00 01 00 00 00 80
189 * 23 02 00 9C 80 00 00 08 80 00 81 00 82 00 83 00 84 00 85 00 86 00 87 00
190 * 16 02 00 80 85 7F 0A "@ ▌" 00 01 00 00 00 80
191 * 17 02 00 81 85 7F 0A 20 FF FF \2+ 1C 00 FF FF 00 00 80
192 * 14 02 00 81 81 43 18 FF 01 81 00 00 00 81 00
193 * 21 02 00 82 85 7F 0A "` ╨" 00 01 00 \2+ 1C 04 FF FF 00 00 80
194 * 14 02 00 82 81 43 18 F0 01 82 00 00 00 82 00
195 * 16 02 00 83 85 7F 0A "@ ]" 00 01 00 00 00 80
196 * 16 02 00 84 85 7F 0A "@ ╘" 00 01 00 00 00 80
197 * 16 02 00 85 85 7F 0A "@ M" 00 01 00 00 00 80
198 * 16 02 00 86 85 7F 0A "@ ▀" 00 01 00 00 00 80
199 * 16 02 00 87 85 7F 0A "@ φ" 00 01 00 00 00 80
200 * 23 02 00 9D 80 00 00 08 80 00 81 00 82 00 83 00 84 00 85 00 86 00 87 00
201 * 16 02 00 80 85 7F 0A "@ ε" 00 01 00 00 00 80
202 * 17 02 00 81 85 7F 0A 20 FF FF \2+ 1C 00 FF FF 00 00 80
203 * 14 02 00 81 81 43 18 FF 01 81 00 00 00 81 00
204 * 21 02 00 82 85 7F 0A "` α" 00 01 00 \2+ 1C 04 FF FF 00 00 80
205 * 14 02 00 82 81 43 18 F0 01 82 00 00 00 82 00
206 * 16 02 00 85 85 7F 0A "@ ■" 00 01 00 00 00 80
207 * 16 02 00 86 85 7F 0A "@ ∩" 00 01 00 00 00 80
208 * 16 02 00 87 85 7F 0A "@ " 00 01 00 00 00 80
209 * 23 02 00 9E 80 00 00 08 80 00 81 00 81 00 82 00 82 00 85 00 86 00 87 00
210 * 16 02 00 80 85 7F 0A "@ " 00 01 00 00 00 80
211 * 17 02 00 81 85 7F 0A 20 FF FF \2+ 1C 00 FF FF 00 00 80
212 * 14 02 00 81 81 43 18 FF 01 81 00 00 00 81 00
213 * 21 02 00 82 85 7F 0A "` ≡" 00 01 00 \2+ 1C 04 FF FF 00 00 80
214 * 14 02 00 82 81 43 18 F0 01 82 00 00 00 82 00
215 * 16 02 00 85 85 7F 0A "@ ■" 00 01 00 00 00 80
216 * 16 02 00 86 85 7F 0A "@ ∩" 00 01 00 00 00 80
217 * 16 02 00 87 85 7F 0A "@ ε" 00 01 00 00 00 80
218 * 23 02 00 9F 80 00 00 08 80 00 81 00 81 00 82 00 82 00 85 00 86 00 87 00
219 * 70 02 00 99 81 43 18 0F 0F 90 00 00 00 91 00 01 01 92 00 02 02 93 00 03 03 94 00 04 04 95 00 05 05
96 00 06 06 97 00 07 07 98 00 08 08 99 00 09 09 9A 00 0A 0A 9B 00 0B 0B 9C 00 0C 0C 9D 00 0D 0D
9E 00 0E 0E 9F 00
220 * 4 01 00 01 01
221 NARS/newnars00.png 8bpp 354 72 14 14 1 1 normal
222 * 9 02 00 00 01 01 00 00 00 00
223 * 122 00 00 01 74 00 06 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
224 * 18 04 00 7F 01 00 "4-2-0 Norris" 00
225 * 4 01 00 02 08
226 NARS/newnars00.png 8bpp 450 72 8 16 -3 -14 normal
227 NARS/newnars00.png 8bpp 466 72 14 13 -6 -9 normal chunked
228 NARS/newnars00.png 8bpp 498 72 16 11 0 -7 normal
229 NARS/newnars00.png 8bpp 530 72 13 11 2 -3 normal chunked
230 NARS/newnars00.png 8bpp 562 72 8 14 -3 -4 normal
231 NARS/newnars00.png 8bpp 578 72 13 11 -13 -3 normal chunked
232 NARS/newnars00.png 8bpp 610 72 16 11 -16 -7 normal
233 NARS/newnars00.png 8bpp 642 72 14 13 -6 -9 normal chunked
234 NARS/newnars00.png 8bpp 674 72 8 8 -3 -8 normal
235 NARS/newnars00.png 8bpp 690 72 9 8 -3 -5 normal chunked
236 NARS/newnars00.png 8bpp 706 72 8 8 4 -4 normal
237 NARS/newnars00.png 8bpp 722 72 9 8 4 -1 normal chunked
238 NARS/newnars00.png 8bpp 738 72 8 10 -3 -2 normal
239 NARS/newnars00.png 8bpp 754 72 9 8 -11 -1 normal chunked
240 NARS/newnars00.png 8bpp 770 72 8 8 -12 -4 normal
241 NARS/newnars00.png 8bpp 786 72 9 8 -4 -5 normal chunked
242 * 9 02 00 10 01 01 00 00 00 00
243 * 9 02 00 20 01 01 01 00 01 00
244 * 4 01 00 01 01
245 NARS/newnars00.png 8bpp 50 104 24 11 -12 -7 normal
246 * 9 02 00 C0 01 01 00 00 00 00
247 * 14 02 00 16 81 10 00 FF 01 00 80 01 01 FF FF
248 * 14 02 00 10 81 0C 00 FF 01 16 00 16 16 10 00
249 * 18 02 00 33 81 10 00 FF 02 4A 80 01 01 4A 80 02 02 00 00
250 * 14 02 00 10 81 0C 00 FF 01 33 00 33 33 10 00
251 * 15 02 00 0D 85 1A 40 18 00 00 00 04 00 00 00 00
252 * 17 02 00 0D 86 B4 00 FF FF 01 0D 00 00 00 00 00 18 80
253 * 14 02 00 36 81 10 00 FF 01 0D 00 0D 0D 00 00
254 * 14 02 00 10 81 0C 00 FF 01 36 00 36 36 10 00
255 * 14 02 00 36 81 10 00 FF 01 05 80 21 21 00 00
256 * 18 02 00 20 81 0C 00 FF 02 36 00 36 36 40 80 10 10 20 00
257 * 14 02 00 10 81 41 00 01 01 20 00 01 01 10 00
258 * 10 03 00 01 00 01 FF C0 00 10 00
259 * 101 00 00 28 01 00 00 00 00 2A E7 3C 0A 00 02 14 03 23 04 46 05 00 06 0F 07 05 09 38 00 0B C8 00 16
14 24 00 1F 1A 17 14 0D 18 21 05 22 14 19 00 0E 30 4C 00 00 12 FD 13 00 14 00 15 00 08 00 18 00
1A 80 1B 00 00 1C 00 1D 00 00 00 00 1E 91 20 00 23 00 25 00 26 14 27 1A 28 00 00 29 00 00 2B B9
00 2C 00 2D 00
260 * 20 04 00 7F 01 01 "4-4-0 American" 00
LoneBlackWolf
michael blunck
Tycoon
Posts: 5948 Joined: 27 Apr 2005 07:09
Contact:
Post
by michael blunck » 02 Oct 2016 08:00
Maddog45353 wrote:
Where is action0 or the running cost/purchase costs action in this code for the Norris?
Code: Select all
259 * 101 00 00 28 01 00 00 00 00 2A E7 3C 0A 00 02 14 03 23 04 46 05 00 06 0F 07 05 09 38 00 0B C8 00 16
14 24 00 1F 1A 17 14 0D 18 21 05 22 14 19 00 0E 30 4C 00 00 12 FD 13 00 14 00 15 00 08 00 18 00
1A 80 1B 00 00 1C 00 1D 00 00 00 00 1E 91 20 00 23 00 25 00 26 14 27 1A 28 00 00 29 00 00 2B B9
00 2C 00 2D 00
->
Code: Select all
259 * 101 00 00 28 01
00 // veh ID
00 00 00 // intro date (default)
2A E7 3C 0A 00 // intro date (long format)
02 14 // reliability decay speed
03 23 // veh life
04 46 // model life
05 00 // track type
06 0F // climate availability
07 05 // load amount
09 38 00 // speed
0B C8 00 // power
16 14 // weight
24 00 // weight (hi-byte)
1F 1A // tractive effort factor
17 14 // cost factor
0D 18 // running cost factor
21 05 // shorten vehicle
22 14 // visual effect type
19 00 // engine traction type
0E 30 4C 00 00 // running cost base
12 FD // new graphics
13 00 // dual-headed?
14 00 // cargo capacity
15 00 // cargo type
08 00 // AI speial flag
18 00 // AI engine rank
1A 80 // sort purchase list
1B 00 00 // additional power
1C 00 // refit cost
1D 00 00 00 00 // cargo mask
1E 91 // callbacks
20 00 // air drag
23 00 // additional weight
25 00 // user-defined bit maks
26 14 // early retire
27 1A // misc flags
28 00 00 // refittable cargo classes
29 00 00 // non-refittable cargo classes
2B B9 00 // cargo aging
2C 00 // refittable cargo types (list)
2D 00 // non-refittable cargo types (list)
HTH
Michael
Maddog45353
Engineer
Posts: 112 Joined: 26 Jun 2013 09:00
Post
by Maddog45353 » 02 Oct 2016 18:20
michael blunck wrote: Maddog45353 wrote:
Where is action0 or the running cost/purchase costs action in this code for the Norris?
Code: Select all
259 * 101 00 00 28 01 00 00 00 00 2A E7 3C 0A 00 02 14 03 23 04 46 05 00 06 0F 07 05 09 38 00 0B C8 00 16
14 24 00 1F 1A 17 14 0D 18 21 05 22 14 19 00 0E 30 4C 00 00 12 FD 13 00 14 00 15 00 08 00 18 00
1A 80 1B 00 00 1C 00 1D 00 00 00 00 1E 91 20 00 23 00 25 00 26 14 27 1A 28 00 00 29 00 00 2B B9
00 2C 00 2D 00
->
Code: Select all
259 * 101 00 00 28 01
00 // veh ID
00 00 00 // intro date (default)
2A E7 3C 0A 00 // intro date (long format)
02 14 // reliability decay speed
03 23 // veh life
04 46 // model life
05 00 // track type
06 0F // climate availability
07 05 // load amount
09 38 00 // speed
0B C8 00 // power
16 14 // weight
24 00 // weight (hi-byte)
1F 1A // tractive effort factor
17 14 // cost factor
0D 18 // running cost factor
21 05 // shorten vehicle
22 14 // visual effect type
19 00 // engine traction type
0E 30 4C 00 00 // running cost base
12 FD // new graphics
13 00 // dual-headed?
14 00 // cargo capacity
15 00 // cargo type
08 00 // AI speial flag
18 00 // AI engine rank
1A 80 // sort purchase list
1B 00 00 // additional power
1C 00 // refit cost
1D 00 00 00 00 // cargo mask
1E 91 // callbacks
20 00 // air drag
23 00 // additional weight
25 00 // user-defined bit maks
26 14 // early retire
27 1A // misc flags
28 00 00 // refittable cargo classes
29 00 00 // non-refittable cargo classes
2B B9 00 // cargo aging
2C 00 // refittable cargo types (list)
2D 00 // non-refittable cargo types (list)
HTH
Michael
Oh i see thanks so much.
EDIT1: Wiki doesn't explain this best as i thought it would.
EDIT2: Also there is a parameter for halfing the costs where is that located?
LoneBlackWolf
michael blunck
Tycoon
Posts: 5948 Joined: 27 Apr 2005 07:09
Contact:
Post
by michael blunck » 03 Oct 2016 12:04
Maddog45353 wrote:
EDIT2: Also there is a parameter for halfing the costs where is that located?
Action0 General Variables, prop 08:
newgrf specs wrote:
Setting this property allows changing these base costs by factors of two. The default value of the property is 08 which leaves the base cost unchanged. Adding one to the property doubles the base cost, subtracting one halves it.
regards
Michael
Maddog45353
Engineer
Posts: 112 Joined: 26 Jun 2013 09:00
Post
by Maddog45353 » 03 Oct 2016 20:59
michael blunck wrote: Maddog45353 wrote:
EDIT2: Also there is a parameter for halfing the costs where is that located?
Action0 General Variables, prop 08:
newgrf specs wrote:
Setting this property allows changing these base costs by factors of two. The default value of the property is 08 which leaves the base cost unchanged. Adding one to the property doubles the base cost, subtracting one halves it.
regards
Michael
sorry i don't see that in the .nfo file.
LoneBlackWolf
michael blunck
Tycoon
Posts: 5948 Joined: 27 Apr 2005 07:09
Contact:
Post
by michael blunck » 03 Oct 2016 21:10
Maddog45353 wrote: michael blunck wrote: Maddog45353 wrote:
EDIT2: Also there is a parameter for halfing the costs where is that located?
Action0 General Variables, prop 08:
sorry i don't see that in the .nfo file.
What nfo file are you talking of? I just know about your "spoiler".
In case the newgrf in question uses any parameters to change properties, look out for "action 0D", "action 7", or "action 9"s.
regards
Michael
Maddog45353
Engineer
Posts: 112 Joined: 26 Jun 2013 09:00
Post
by Maddog45353 » 03 Oct 2016 21:50
michael blunck wrote: Maddog45353 wrote: michael blunck wrote:
Action0 General Variables, prop 08:
sorry i don't see that in the .nfo file.
What nfo file are you talking of? I just know about your "spoiler".
In case the newgrf in question uses any parameters to change properties, look out for "action 0D", "action 7", or "action 9"s.
regards
Michael
Hmmmm.
EDIT1:
Code: Select all
0D 0D 94 "Coded by " 95 "David Dallaston, "
This one?
EDIT2: still having trouble finding the code for the parameter costs code
[+] Spoiler Code: Select all
0 * 4 A0 1B 00 00
1 * 19 14 "CINFOBVRSN" 04 00 FB 00 00 00 00 00
2 * 19 14 "CINFOBMINV" 04 00 FA 00 00 00 00 00
3 * 16 14 "CINFOBPALS" 01 00 57 00 00
4 * 195 14 "CINFOBNPAR" 01 00 01 "CPARAC" 00 00 00 00 "TNAME" 7F "Reduce "
"vehicle costs" 00 "TDESC" 7F "Halve the purchase "
"and running costs of all trains. "
"This may be useful if you want a "
"faster or easier game." 00 "BMASK" 03 00 00 00
01 "BTYPE" 01 00 01 "BDFLT" 01 00 00 00 00 00 00
5 * 221 08 08 "DD" 03 02 "North American Railway Set "
"(NARS) 2.51" 00 94 "Version " 95 "2.51 - April "
"2015" 0D 0D 94 "Coded by " 95 "David Dallaston, "
94 "graphics by " 95 "Dan MacKellar " 94 "and "
95 "David Dallaston. " 94 "Special thanks "
"to " 95 "all the developers " 94 "of " 95 "TTDPatch "
94 "and " 95 "OpenTTD." 00
6 * 22 00 08 01 04 00 12 "RAILELRLMONOMGLV"
7 * 194 00 08 01 2F 00 09 "PASSCOALMAILOIL_LVSTGOODGRAIWOODIORESTELVALU"
"PAPRFOODFRUTCOREWATRRUBRTWODWHEAMAIZGOLDDIAMFERTVE"
"HICOPRWDPRPLASTOURPETRSCMTENSPFMSPMNSPBEERAOREBDMT"
"SGCNSGBTRFPRCLAYFICRGRVLMILKRCYCSANDFISHWOOL"
8 * 6 09 00 01 \71 00 04
9 * 7 00 08 01 01 0F 08 07
10 * 7 00 08 01 01 2A 08 0C
11 * 7 00 08 01 01 10 08 0B
12 * 7 00 08 01 01 2B 08 05
13 * 6 09 00 01 \70 00 04
14 * 7 00 08 01 01 0F 08 06
15 * 7 00 08 01 01 2A 08 0B
16 * 7 00 08 01 01 10 08 0A
17 * 7 00 08 01 01 2B 08 04
18 * 9 0D 0A \D= 11 FE FF FF 00 00
19 * 9 0D 8E \D= FF 00 02 00 00 00
20 * 9 0D 9E \D| 9E FF 08 00 00 00
21 * 3 11 07 00
LoneBlackWolf
michael blunck
Tycoon
Posts: 5948 Joined: 27 Apr 2005 07:09
Contact:
Post
by michael blunck » 04 Oct 2016 07:55
Code: Select all
4 * 195 14 "CINFOBNPAR" 01 00 01 "CPARAC" 00 00 00 00 "TNAME" 7F "Reduce "
"vehicle costs" 00 "TDESC" 7F "Halve the purchase "
"and running costs of all trains. "
"This may be useful if you want a "
"faster or easier game." 00 "BMASK" 03 00 00 00
01 "BTYPE" 01 00 01 "BDFLT" 01 00 00 00 00 00 00
This is OTTD´s "action 14", specifying parameter "0" as Boolean, to be used for toggling purchase/running cost reduction.
Action 0 general variable prop8 (cost base multipliers) are then being set depending on value of parameter 0 (bit0 being either set or clear):
Code: Select all
8 * 6 09 00 01 \71 00 04 // test parameter "0" bit0 if set, and skip next 4 sprites if so
9 * 7 00 08 01 01 0F 08 07 // set cost base multiplier 0F (locomotive purchase) -1 (/2)
10 * 7 00 08 01 01 2A 08 0C // ditto for 2A (steam engine running costs) +4 (*16)
11 * 7 00 08 01 01 10 08 0B // ditto for 10 (waggon purchase) +3 (*8)
12 * 7 00 08 01 01 2B 08 05 // ditto for 2B (diesel engine running costs) -3 (/8)
13 * 6 09 00 01 \70 00 04 // test parameter "0" bit0 if clear, and skip next 4 sprites if so
14 * 7 00 08 01 01 0F 08 06 // set cost base multiplier 0F (locomotive purchase) -2 (/4)
15 * 7 00 08 01 01 2A 08 0B // ditto for 2A (steam engine running costs) +3 (*8)
16 * 7 00 08 01 01 10 08 0A // ditto for 10 (waggon purchase) +2 (*4)
17 * 7 00 08 01 01 2B 08 04 // ditto for 2B (diesel engine running costs) -4 (/16)
HTH
Michael
Maddog45353
Engineer
Posts: 112 Joined: 26 Jun 2013 09:00
Post
by Maddog45353 » 04 Oct 2016 20:25
michael blunck wrote: Code: Select all
4 * 195 14 "CINFOBNPAR" 01 00 01 "CPARAC" 00 00 00 00 "TNAME" 7F "Reduce "
"vehicle costs" 00 "TDESC" 7F "Halve the purchase "
"and running costs of all trains. "
"This may be useful if you want a "
"faster or easier game." 00 "BMASK" 03 00 00 00
01 "BTYPE" 01 00 01 "BDFLT" 01 00 00 00 00 00 00
This is OTTD´s "action 14", specifying parameter "0" as Boolean, to be used for toggling purchase/running cost reduction.
Action 0 general variable prop8 (cost base multipliers) are then being set depending on value of parameter 0 (bit0 being either set or clear):
Code: Select all
8 * 6 09 00 01 \71 00 04 // test parameter "0" bit0 if set, and skip next 4 sprites if so
9 * 7 00 08 01 01 0F 08 07 // set cost base multiplier 0F (locomotive purchase) -1 (/2)
10 * 7 00 08 01 01 2A 08 0C // ditto for 2A (steam engine running costs) +4 (*16)
11 * 7 00 08 01 01 10 08 0B // ditto for 10 (waggon purchase) +3 (*8)
12 * 7 00 08 01 01 2B 08 05 // ditto for 2B (diesel engine running costs) -3 (/8)
13 * 6 09 00 01 \70 00 04 // test parameter "0" bit0 if clear, and skip next 4 sprites if so
14 * 7 00 08 01 01 0F 08 06 // set cost base multiplier 0F (locomotive purchase) -2 (/4)
15 * 7 00 08 01 01 2A 08 0B // ditto for 2A (steam engine running costs) +3 (*8)
16 * 7 00 08 01 01 10 08 0A // ditto for 10 (waggon purchase) +2 (*4)
17 * 7 00 08 01 01 2B 08 04 // ditto for 2B (diesel engine running costs) -4 (/16)
HTH
Michael
Thank you very much you're a good helper.
LoneBlackWolf
Users browsing this forum: Semrush [Bot] and 26 guests