Talk:Callbacks

From GRFSpecs
Jump to: navigation, search

--Gesia (talk) 21:48, 17 October 2013 (UTC)

The new introduction states that variable 1C is a word and therefore type 85 must be used.

However, the paragraph below mentions variable 0C and some GRFs (e.g. Ikarus 6) use type 81, which seems to work ingame:

  81 * 9	 02 01 02 01 01 00 00 00 00
  82 * 14	 02 01 10 81 0C 00 FF 01 02 FF 23 23 02 00
  83 * 7	 00 01 01 01 02 0E FF
  84 * 10	 03 01 01 02 01 FF 10 00 A1 00

I'm guessing some relevant information is still missing?

--Frosch (talk) 18:06, 18 October 2013 (UTC) 1C was wrong, I copied that from your example :p It's in fact 0C.

Testing callbacks with type 81 was deprecated 2005 or 2006. It should no longer be used. It only still works because new callback IDs were assigned in a way, so that old NewGRF do not break. That's the reason why there is a gap from 3E to 13F.

--Gesia (talk) 11:44, 19 October 2013 (UTC)

How smart of me to point out my own mistakes as somebody elses, isn't it? Seriously though: sorry, that was pretty stupid.

After having a closer look it seems to me that several well known NewGRFs actually use type 81. Hence, I took the liberty of adding your answer (in slightly modified form) to the introduction.