Rubidium 
							
						 
					 
					
						
						
							
						
						4e6d4fcf32 
					 
					
						
						
							
							Codechange: replace for loops with endof with range-based for loops  
						
						 
						
						
						
						
					 
					
						2024-04-08 07:00:55 +02:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Peter Nelson 
							
						 
					 
					
						
						
							
						
						9854553e10 
					 
					
						
						
							
							Codechange: ZOOM_LVL_SHIFT/BASE are not actually ZOOM_LVLs.  
						
						 
						
						... 
						
						
						
						Rename to ZOOM_BASE_SHIFT and ZOOM_BASE respectively, and derive from ZOOM_LVL instead of numeric value. 
						
						
					 
					
						2024-04-04 22:27:03 +01:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Peter Nelson 
							
						 
					 
					
						
						
							
						
						e16b982b6a 
					 
					
						
						
							
							Codechange: Use iteration when dealing with all HouseSpecs.  
						
						 
						
						
						
						
					 
					
						2024-03-28 23:23:00 +01:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Peter Nelson 
							
						 
					 
					
						
						
							
						
						3e83dcedfd 
					 
					
						
						
							
							Codechange: Allocate houses dynamically instead of from a fixed array.  
						
						 
						
						... 
						
						
						
						This uses vectors for HouseSpecs and global/town building counts. 
						
						
					 
					
						2024-03-28 23:23:00 +01:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Patric Stout 
							
						 
					 
					
						
						
							
						
						a3cfd23cf9 
					 
					
						
						
							
							Codechange: rename byte to uint8_t ( #12308 )  
						
						 
						
						
						
						
					 
					
						2024-03-16 23:59:32 +01:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Rubidium 
							
						 
					 
					
						
						
							
						
						27eadc13ec 
					 
					
						
						
							
							Codechange: rename TILE_ADD(XY) to TileAdd(XY)  
						
						 
						
						
						
						
					 
					
						2024-03-10 15:50:24 +01:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Rubidium 
							
						 
					 
					
						
						
							
						
						bab5a8a787 
					 
					
						
						
							
							Codechange: use std::source_location over __FILE__ and __LINE__ for Backup  
						
						 
						
						
						
						
					 
					
						2024-03-10 10:14:20 +01:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Michael Lutz 
							
						 
					 
					
						
						
							
						
						8dda387f82 
					 
					
						
						
							
							Codechange: Use std::tuple for slope functions with two return values  
						
						 
						
						
						
						
					 
					
						2024-03-08 18:08:55 +01:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Peter Nelson 
							
						 
					 
					
						
						
							
						
						2fd9096070 
					 
					
						
						
							
							Change: Decouple and remove landscape-dependent cargo types. ( #11719 )  
						
						 
						
						... 
						
						
						
						Cargo types of default engines, industries and houses are now specified in terms of label. 
						
						
					 
					
						2024-02-04 10:16:08 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Peter Nelson 
							
						 
					 
					
						
						
							
						
						17d02ed45f 
					 
					
						
						
							
							Feature: NewGRF properties to set town production effect and multiplier. ( #11947 )  
						
						 
						
						... 
						
						
						
						Town production effect is modelled on town acceptance (growth) effect, and so takes an original cargo slot for behaviour instead of a direct value.
NewGRF feature 0x0B, property 0x1E, takes 1 byte.
Valid values are:
- 0x00 to behave like passengers
- 0x02 to behave like mail
- 0xFF to behave like other cargo (i.e. not produced.)
If not set, town production effect is set based on the cargo label ('PASS' or 'MAIL').
Town production multiplier allows adjusting the amount of cargo produces when Town Production Effect is set, without needing to use callbacks.
NewGRF feature 0x0B (cargo), property 0x1F, accepts a 2 byte (word) value, similar to the cargo capacity multiplier property. The default value is 256 which means 100%, i.e. normal rate. 
						
						
					 
					
						2024-02-03 13:58:31 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								frosch 
							
						 
					 
					
						
						
							
						
						b1718478c8 
					 
					
						
						
							
							Codechange: Replace old non-standard attributes with C++17/20 standard attributes.  
						
						 
						
						
						
						
					 
					
						2024-02-02 22:29:28 +01:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Peter Nelson 
							
						 
					 
					
						
						
							
						
						6d93fa649c 
					 
					
						
						
							
							Change: Towns generate cargo based on town production effect.  
						
						 
						
						... 
						
						
						
						This replaces the fixed handling of passengers and mail. 
						
						
					 
					
						2024-02-02 20:37:49 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Peter Nelson 
							
						 
					 
					
						
						
							
						
						60dcf3b5e2 
					 
					
						
						
							
							Codechange: Rename TownEffect to TownAcceptanceEffect.  
						
						 
						
						... 
						
						
						
						This makes it clearer that TownEffect only affects acceptance behaviour. 
						
						
					 
					
						2024-02-02 20:37:49 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								merni-ns 
							
						 
					 
					
						
						
							
						
						ccaa383e85 
					 
					
						
						
							
							Fix   #11938 : Check infinite money setting in cases where it was missed ( #11939 )  
						
						 
						
						
						
						
					 
					
						2024-01-31 20:11:48 +01:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Tyler Trahan 
							
						 
					 
					
						
						
							
						
						41f2eed425 
					 
					
						
						
							
							Feature: Settings to scale cargo production of towns and industries ( #10606 )  
						
						 
						
						
						
						
					 
					
						2024-01-30 15:11:46 -05:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								merni-ns 
							
						 
					 
					
						
						
							
						
						5a88027a19 
					 
					
						
						
							
							Feature: Infinite money mode ( #11902 )  
						
						 
						
						
						
						
					 
					
						2024-01-30 18:01:02 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Peter Nelson 
							
						 
					 
					
						
						
							
						
						bf013097a7 
					 
					
						
						
							
							Fix   #11918 : Houses should build only next to road stops, not any station type. ( #11919 )  
						
						 
						
						
						
						
					 
					
						2024-01-29 01:27:34 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								frosch 
							
						 
					 
					
						
						
							
						
						68c64d2511 
					 
					
						
						
							
							Codechange: Remove TKM string codes by duplicating strings.  
						
						 
						
						
						
						
					 
					
						2024-01-28 14:44:24 +01:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Tyler Trahan 
							
						 
					 
					
						
						
							
						
						735abfe111 
					 
					
						
						
							
							Codechange: Split dates and timers into Economy and Calendar time ( #10700 )  
						
						 
						
						
						
						
					 
					
						2024-01-22 09:04:34 -05:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								SamuXarick 
							
						 
					 
					
						
						
							
						
						fddcaef74a 
					 
					
						
						
							
							Codechange: Use town zone constants instead of magic numbers  
						
						 
						
						
						
						
					 
					
						2023-12-18 22:12:43 +01:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Jonathan G Rennison 
							
						 
					 
					
						
						
							
						
						8437b20fed 
					 
					
						
						
							
							Fix: Deleting towns did not check for waypoints referencing the town  
						
						 
						
						
						
						
					 
					
						2023-11-29 00:27:16 +01:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Tyler Trahan 
							
						 
					 
					
						
						
							
						
						4181d3c1ff 
					 
					
						
						
							
							Codechange: Don't use a magic number for the number of DiagDirections  
						
						 
						
						
						
						
					 
					
						2023-11-28 14:24:33 -05:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Tyler Trahan 
							
						 
					 
					
						
						
							
						
						2dad9263d7 
					 
					
						
						
							
							Doc: Add, fix, and clean up documentation inside town_cmd.cpp  
						
						 
						
						
						
						
					 
					
						2023-11-28 14:24:33 -05:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Tyler Trahan 
							
						 
					 
					
						
						
							
						
						745945c4d3 
					 
					
						
						
							
							Codechange: Be consistent with how we name common parameters  
						
						 
						
						... 
						
						
						
						TileIndex is always tile and Town is always *t. Don't use t and *town. 
						
						
					 
					
						2023-11-28 14:24:33 -05:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Tyler Trahan 
							
						 
					 
					
						
						
							
						
						1b14eca9d9 
					 
					
						
						
							
							Codechange: Rename TryClearTile() for clarity  
						
						 
						
						... 
						
						
						
						The function does not execute the clearing action. 
						
						
					 
					
						2023-11-28 14:24:33 -05:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Tyler Trahan 
							
						 
					 
					
						
						
							
						
						a98fe9f317 
					 
					
						
						
							
							Codechange: Rename MakeTownHouseBigger() for clarity  
						
						 
						
						
						
						
					 
					
						2023-11-28 14:24:33 -05:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Tyler Trahan 
							
						 
					 
					
						
						
							
						
						060672428d 
					 
					
						
						
							
							Codechange: Merge confusingly-named helper functions into their timer  
						
						 
						
						
						
						
					 
					
						2023-11-28 14:24:33 -05:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Tyler Trahan 
							
						 
					 
					
						
						
							
						
						1f41e773d6 
					 
					
						
						
							
							Codechange: Use consistent name for bay road stops  
						
						 
						
						... 
						
						
						
						As of #10494 , this is how we describe original dead-end road stops. 
						
						
					 
					
						2023-11-28 14:24:33 -05:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Peter Nelson 
							
						 
					 
					
						
						
							
						
						ab535c0a86 
					 
					
						
						
							
							Codechange: Add base() method to StrongType to allow access to the base type without casting. ( #11445 )  
						
						 
						
						... 
						
						
						
						This removes the ability to explicitly cast to the base type, but the requirement
to use .base() means the conversion is still explicit. 
						
						
					 
					
						2023-11-06 20:29:35 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Tyler Trahan 
							
						 
					 
					
						
						
							
						
						088db62dba 
					 
					
						
						
							
							Change: Always allow expanding towns in Scenario Editor to build new roads ( #11377 )  
						
						 
						
						
						
						
					 
					
						2023-10-19 17:01:45 -04:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Peter Nelson 
							
						 
					 
					
						
						
							
						
						9602de474d 
					 
					
						
						
							
							Codechange: Use iterators and/or range-for on cargo related loops.  
						
						 
						
						
						
						
					 
					
						2023-10-19 17:03:25 +01:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								frosch 
							
						 
					 
					
						
						
							
						
						5733145c59 
					 
					
						
						
							
							Cleanup: Remove unneeded parameters.  
						
						 
						
						
						
						
					 
					
						2023-09-19 22:49:59 +02:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								frosch 
							
						 
					 
					
						
						
							
						
						b6c8f301be 
					 
					
						
						
							
							Codechange: Silence warnings about intentionally unused parameters.  
						
						 
						
						
						
						
					 
					
						2023-09-19 22:49:59 +02:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								PeterN 
							
						 
					 
					
						
						
							
						
						6643c010bd 
					 
					
						
						
							
							Fix: NewGRF house class mappings were not reset between games. ( #11279 )  
						
						 
						
						
						
						
					 
					
						2023-09-10 18:55:37 +01:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Tyler Trahan 
							
						 
					 
					
						
						
							
						
						77173a6a10 
					 
					
						
						
							
							Codechange: Move date consts and functions to CalendarTime and TimerGameCalendar classes  
						
						 
						
						
						
						
					 
					
						2023-09-10 08:40:25 -04:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Tyler Trahan 
							
						 
					 
					
						
						
							
						
						fca2b37726 
					 
					
						
						
							
							Codechange: Move Ticks into their own class  
						
						 
						
						
						
						
					 
					
						2023-09-10 08:40:25 -04:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Patric Stout 
							
						 
					 
					
						
						
							
						
						07730584d7 
					 
					
						
						
							
							Codechange: make explicit when a TileIndex is cast to its basetype ( #11190 )  
						
						 
						
						... 
						
						
						
						This prevents people accidentially assigning a TileIndex to a Date
or any other type they shouldn't. 
						
						
					 
					
						2023-08-15 18:12:05 +02:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Patric Stout 
							
						 
					 
					
						
						
							
						
						299570b2c1 
					 
					
						
						
							
							Codechange: make TimerGameCalendar Date and Year types strongly typed ( #10761 )  
						
						 
						
						
						
						
					 
					
						2023-08-12 18:14:21 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Jonathan G Rennison 
							
						 
					 
					
						
						
							
						
						6a048bc168 
					 
					
						
						
							
							Fix   #11164 : Duplicate town names when using the many random towns function  
						
						 
						
						
						
						
					 
					
						2023-08-02 20:07:59 +02:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Rubidium 
							
						 
					 
					
						
						
							
						
						eaae0bb5e7 
					 
					
						
						
							
							Codechange: automatic adding of _t to (u)int types, and WChar to char32_t  
						
						 
						
						... 
						
						
						
						for i in `find src -type f|grep -v 3rdparty/fmt|grep -v 3rdparty/catch2|grep -v 3rdparty/opengl|grep -v stdafx.h`; do sed 's/uint16& /uint16 \&/g;s/int8\([ >*),;[]\)/int8_t\1/g;s/int16\([ >*),;[]\)/int16_t\1/g;s/int32\([ >*),;[]\)/int32_t\1/g;s/int64\([ >*),;[]\)/int64_t\1/g;s/ uint32(/ uint32_t(/g;s/_uint8_t/_uint8/;s/Uint8_t/Uint8/;s/ft_int64_t/ft_int64/g;s/uint64$/uint64_t/;s/WChar/char32_t/g;s/char32_t char32_t/char32_t WChar/' -i $i; done 
						
						
					 
					
						2023-07-19 19:30:14 +02:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Björn Wärmedal 
							
						 
					 
					
						
						
							
						
						7de37e07b6 
					 
					
						
						
							
							Change: make Exclusive Transport Rights more exclusive ( #11076 )  
						
						 
						
						... 
						
						
						
						Now, exclusive transport rights can only be bought if no company
currently owns them. A successful bribe will void any exclusive
transport rights that any *other* company currently has in the town. 
						
						
					 
					
						2023-07-14 14:00:28 +02:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Rubidium 
							
						 
					 
					
						
						
							
						
						f86500df92 
					 
					
						
						
							
							Codechange: remove need for SetDParamX  
						
						 
						
						
						
						
					 
					
						2023-06-12 09:12:11 +02:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								rubidium42 
							
						 
					 
					
						
						
							
						
						921f5afc4d 
					 
					
						
						
							
							Codechange: Apply suggestions from code review  
						
						 
						
						
						
						
					 
					
						2023-06-05 17:07:39 +02:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Rubidium 
							
						 
					 
					
						
						
							
						
						2dd2b698d2 
					 
					
						
						
							
							Codechange: convert C-style GetTownName API to std::string returning API  
						
						 
						
						
						
						
					 
					
						2023-06-05 17:07:39 +02:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Peter Nelson 
							
						 
					 
					
						
						
							
						
						76516d7f70 
					 
					
						
						
							
							Codechange: Use IsValidCargoID/IsValidCargoType.  
						
						 
						
						... 
						
						
						
						IsValidCargoType() is used only for unmapped IDs. 
						
						
					 
					
						2023-05-22 20:43:40 +01:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Peter Nelson 
							
						 
					 
					
						
						
							
						
						c38df2d589 
					 
					
						
						
							
							Codechange: Use std::map instead of custom SmallMap.  
						
						 
						
						
						
						
					 
					
						2023-05-18 12:18:30 +01:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Tyler Trahan 
							
						 
					 
					
						
						
							
						
						98d809c33b 
					 
					
						
						
							
							Codechange: Don't use macros for DAYS_TILL and friends ( #10746 )  
						
						 
						
						
						
						
					 
					
						2023-05-07 05:25:24 -04:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Rubidium 
							
						 
					 
					
						
						
							
						
						19ec4e8beb 
					 
					
						
						
							
							Codechange: replace ClampToI32/U16 with ClampTo<int32_t/uint16_t>  
						
						 
						
						
						
						
					 
					
						2023-05-06 21:26:13 +02:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Patric Stout 
							
						 
					 
					
						
						
							
						
						31ad990831 
					 
					
						
						
							
							Codechange: move tick-counter into TimerGameTick ( #10712 )  
						
						 
						
						
						
						
					 
					
						2023-04-24 16:55:40 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Patric Stout 
							
						 
					 
					
						
						
							
						
						7aa2b9ab0a 
					 
					
						
						
							
							Codechange: move all date-related variables inside the timer ( #10706 )  
						
						 
						
						
						
						
					 
					
						2023-04-24 15:56:01 +00:00