Skip to content
This repository
Newer
Older
100644 303 lines (214 sloc) 12.342 kb
43665d56 »
2012-04-07 perform_mining() optmization and new method of running fleet scripts …
1 # 2012 04 07
2
3 create_schemaverse.sql - v1.2.4
4 tic.pl - v0.13.0
5
6 Optimized things:
7 -Perform_mining() now uses some temporary tables during processing
8 -event_action_index has been disabled/commented out. Keeping this index updated was taxing the public server
9
10 System changes
11 -tic.pl now calls run_fleet_script(fleet_id) instead of the fleet_script_#() itself
12 -run_fleet_script(fleet_id) handles FLEET_SUCCESS and FLEET_FAIL event logging
13
14 BugFix
15 -FLEET_SUCCESS now logs the actual execution time to descriptor_numeric rather than just logging 00:00:00 every time
16
17 Credits (Thanks!)
18 -xocolatl for RUN_FLEET_SCRIPT(fleet_id) suggestion
19 -CBBrowne & MC for thoughts of perform_mining()
20
250a6ad2 »
2012-04-03 More optimization
21 # 2012 04 03
22
23 create_schemaverse.sql - v1.2.3
24
25 Optimized things:
26 -IN_RANGE_PLANET(s, p) now SQL
27 -IN_RANGE_SHIP(s1,s2) now SQL
28 -GET_NUMERIC_VARIABLE(var) now marked STABLE
29 -GET_CHAR_VARIABLE(var) now marked STABLE
30 -event table now collects more stats for player_id_1 and player_id_2
31
32 System changes
33 -event_archive table is gone
34 -archive of a rounds event table is now written to file during round_control()
35
fb7cdcce »
2012-04-03 Credits :)
36 Credits (Thanks!)
37 -CBBrowne for the new SQL IN_RANGE functions
38 -xocolatl for more optimization advice
250a6ad2 »
2012-04-03 More optimization
39
40
d187bf1e »
2012-04-01 Bug in UPGRADE() fixed
41 # 2012 04 01
42
e927df90 »
2012-04-01 Optimized various things
43 create_schemaverse.sql - v1.2.2
44
45 Optimized things:
46 -GET_PLAYER_ID() and GET_PLAYER_USERNAME() marked as STABLE to increase performance of calling functions/views
47 -my_ships was changed back to its original format
48 -update_ships_near_ships() and update_ships_near_planets() both optimized by new indexes and subtle re-write
49 - ship_loc_only CIRCLE(location, 1)
50 - ship_loc_range CIRCLE(location, range)
51 - planet_loc_only CIRCLE(location, 100000)
52
53
54 # 2012 04 01
55
d187bf1e »
2012-04-01 Bug in UPGRADE() fixed
56 create_schemaverse.sql - v1.2.1
57
58 This is the most boring April Fools update ever…
59
60 Bug Fix:
61 -UPGRADE used a smallint when it should have been an integer, causing issue with upgrading the larger skills like max_speed
62
63 Credits (Thanks!):
64 -CBBrowne for the bug report
65
66
a65aa66d »
2012-03-29 Optimization to various views and two new event actions FLEET_SUCCESS…
67 # 2012 03 29
68
69 create_schemaverse.sql - v1.2.0
70 tic.pl - v0.12.0
71
72 Optimized the views of:
73 -my_events
74 -New index on player_id_1, public
75 -New index on player_id_2, public
76 -New index on public
77 -View query re-written to take advantage of new indexes
78 -my_ships
79 -New column player_id in ship_control
80 -View query re-written to take advantage of new indexes
81 -ships_in_range
82 -New column player_id in ships_near_ships
83 -View query re-written to take advantage of new indexes
84 -planets_in_range
85 -New column player_id in ships_near_planets
86 -View query re-written to take advantage of new indexes
87
88 Feature Additions
89 -New event action: FLEET_SUCCESS
90 -When a fleet script completes successfully, a private event will be logged which includes the time taken during execution
91 -Old fleet scripts will need to be updated before this change takes place but otherwise it is automatic
92 -New event action: FLEET_FAIL
93 -When a fleet script fails to execute during the tic, the error will be logged as a new private event
94
95 Credits (Thanks!)
96 -CBBrowne for the suggestions on how to optimize the altered views
97 -CBBrowne for the FLEET_SUCCESS timing code
98 -MassConfusion for the FLEET_FAIL error logging
99 -Everyone else for doing testing, regardless of if they know it
100
c377da7a »
2012-03-15 BugFix in ship state system. Game play change of first minute of flee…
101 # 2012 03 15
102
103 create_schemaverse.sql - v1.1.0
104 tic.pl - v0.11.1
105
106 Bug Fixes
107 -resolved issues with tic.pl and action_permission_check() that allowed for double actions and actions beyond the grave
108
109 Gameplay Changes
110 -First 1 minute of fleet runtime is now free. You can run the upgrade(id, 'FLEET_RUNTIME', 1) once wihtout having the money.
111 -Players starting balance has been lowered to account for this
112
113
c70f9b3d »
2012-03-06 BugFix in the ship location cache to resolve new ships not being seen…
114 # 2012 03 06
115
116 create_schemaverse.sql - v1.1.0 location, location, location
117 tic.pl - v0.11
118
119 Gameplay / System Changes
120 [Location]
121 -Any table/view in the game that had the columns location_x, location_y or destination_x, destination_y have been replaced with location and destination columns, both of the Point data type.
122 -Any function that accepted a location_x integer, location_y integer now accepts location Point (and similar to destination)
123 -Specifics on ships/planets in range are now cached after the movement for a tic is complete. This should speed up all requests to views like ships_in_range
124 - Cached data is stored in ships_near_ships and ships_near_planets (Not accessible to players)
125
126 [Movement]
127 -MOVE() is gone
128 -Ship movement occurs at the beginning of the tic using the MOVE_SHIPS() command
129 -The course of a ship can be controlled using SHIP_COURSE_CONTROL(ship_id, target_speed integer, target_direction integer, destination point)
130 -Once set, a ship will burn all available fuel to attempt to reach the target_speed
131 -Ships will also slow down if fuel is available once the destination is reached
132 -MOVE() bug which stopped ships just outside of a ships range has been resolved
133 -SHIP_COURSE_CONTROL() can be called multiple times during a tic. The actual ship movement will not happen until the tic called MOVE_SHIPS()
134
135 Credits (Thanks guys!)
136 derpfish - Contributed the new MOVE_SHIP()/SHIP_COURSE_CONTROL() system
137 cbbrowne - Contributed the changeover to Point data types from (integer_x,integer_y)
138 MassConfusion - Bug Report
139
cc731355 »
2012-02-23 The Schemaverse v1.0! Changes to Stats and Trophies
140 # 2012 02 23
141
142 create_schemaverse.sql - v1.0.0 <--- Awwwwww yeah. That's nice.
143 stat.pl - v1.0
144
145 Gameplay / System Changes
146 [Trophies]
147 - Trophies now have a Weight and Run Order
148 - Trophies can now be back-run for older rounds
149 - ROUND_CONTROL() calls the new trophy_script_#(_round_id integer) instead of trophy_script_#()
150 - 29 New trophies were created to take advantage of the Weighting
151 - You can see who is currently in the running for a trophy by issuing a select against trophy_script_#((SELECT last_value FROM round_seq)); where the # is the trophy ID.
152
153 [Stats]
154 - Stat Tables: player_overall_stats, player_round_stats, round_stats
155 - Stat Views: current_player_stats, current_round_stats, player_stats
156 - player_round_stats are updated 1 by 1 over time in stat.pl
157 - round_stats is updated after every 100 player updates in stat.pl
158 - player_stats shows both stats for the current round as well as aggregated stats from previous rounds
159 - players have access to SELECT on all stat views and tables. The table results will not be as fresh but will be returned much faster compared to the views
160 - ROUND_CONTROL() updates the stats before issuing trophies
161 - ROUND_CONTROL() prepares the new stat rows for the new round in player_round_stats and round_stats
162
163 [Misc]
164 Changed where the Variable related functions were created within create_schemaverse.sql so that the script actually works
165
166 # 2012 01 23
167
168 Bug Fix
169 - ships_in_range.health now returns a numeric value rather than an integer. Represents the percentage of a ship's remaining health.
170
171 # 2012 01 15
172
173
174 Gameplay change / Bug Fix
175 - Ships can no longer create ships at location (0,0). This was how the rule was intended during the recent map changes but I missed commenting out a line in create_ship
176 - A ship's first coordinates are also now added to the ship_flight_recorder during create_ship_event
177
178
d593ca7e »
2012-01-13 Bugfix in round_control() during planet creation that allowed for dea…
179 # 2012 01 13
180
181 create_schemaverse.sql - v0.14.2
182
183 Bug Fix
184 -Round_Control() difficulty of a planet could be zero leaving it 'dead' (impossible to mine)
185
186 Gameplay change
187 -Round_Control() has been altered so that all player home planets start equal. Inital planet settings for home planets are:
188 mine_limit 30
189 fuel 50000000
190 difficulty 2
191
192
daccccb1 »
2011-12-29 bugfix for round_control
193 # 2011 12 29
194
195 Bug Fix
196 -Round_control() was not setting enabled='t' when activing fleets players had designated to be active at the start of a round
197 -Round_control() was also not removing the owner of Torono at the begging of a round. Now sets to NULL.
198
b9eb577c »
2011-12-04 bugfix for planet fuel
199 # 2011 10 22
200
201 tic.pl - v0.10.1
202
203 Bug Fix/Gameplay change
204 -Since there are less planets, the tic had to be changed to replenish the fuel supply much slower
205
5846b06c »
2011-10-21 v0.14.1 Now I remember
206 # 2011 10 21
207
208 create_schemaverse.sql - v0.14 - Now I remember where I put that ship
209
210 New Features
211 - Players can now store their own variables in the public_variables view.
212 This should give them a lot more control over the state of their scripts.
213 Note: Players cannot reuse the names of system variables
214
215 Players can maintain their variables with UPDATE/INSERT/DELETE on the public_vairable view or use the following commands
216 - SET_NUMERIC_VARIABLE(CHARACTER VARYING, INTEGER)
217 - SET_CHAR_VARIABLE(CHARACTER VARYING, CHARACTER VARYING)
218
219 The GET_NUMERIC_VARIABLE() and GET_CHAR_VARIABLE() have not changed
220
221
9a790b1a »
2011-10-17 v0.14 Where is everyone? New maps now generated every round. The cent…
222 # 2011 10 17
223
224 create_schemaverse.sql - v0.14 - Where is everyone?
225
226 Rule Alterations and Balancing
227 -New maps will now be generated every round
228 -The center box where you could generate ships no longer exists
229 -You can generate a ship on 0,0 still
230 -Only ~(total_players * 1.05) planets will be created each round
231
232
5af4d8c5 »
2011-09-10 v0.13 Packrat adds event archiving after a new round and includes som…
233 # 2011 09 10
234
235 create_schemaverse.sql - v0.13 - Packrat
236
237 New Features
238 - After a round ends, all events from the round are moved into the event_archive table. The first round to be archived will be round 4
239 - read_event() has not changed when using it on the my_events view, if you want to use it on the new event_archive
240 then you can use it by passing a round id like: read_event(round_id, event_id)
241 - A new view has been created, current_player_stats, to allow you to better track your opponents and allies
242
243
b4de1b6e »
2011-08-28 Ships can now keep state to continue performing the same action each tic
244 # 2011 08 28
245
246 create_schemaverse.sql - v0.12 - Stateful Ships
247 tic.pl - v0.10
248 ref.pl - v0.2
249
250 New Features
ef8a31f0 »
2011-08-28 Changes to MOVE
251 - Ships have been given a way to store state. You no longer have to rely on your fleet script to call all actions each tic.
b4de1b6e »
2011-08-28 Ships can now keep state to continue performing the same action each tic
252 my_ships.action : Stores either NULL, 'ATTACK', 'REPAIR', 'MINE'
253 my_ships.action_target_id : Stores either NULL, the Ship ID or Planet ID of the object you want to perform the action against
254 The tic.pl program will run the desired action for each ship after performing the fleet scripts.
ef8a31f0 »
2011-08-28 Changes to MOVE
255 - New MOVE overloads and functionality.
256 MOVE(ship, speed, x, y); -- automatically calculates direction. must have enough fuel still to stop
257 MOVE(ship, x, y); -- automatically calculates direction and best possible speed
258 MOVE(ship, speed, direction, x, y) -- Still works as before
259 As the second overload also mentions, if you give a NULL speed and direction, the system will now calculate the optimal choice for both
260
69e3f73c »
2011-08-28 Better calculations for the ATTACK() action. No longer based on random
261 Rule Alterations and Balancing
262 - The calculation for an attack is now:
263 my_ships.attack * ( DEFENSE_EFFICIENCY / enemy.defense + DEFENSE_EFFICIENCY)
264 This will likely be tweaked but right now DEFENSE_EFFICIENCY is 0.50
265
ef8a31f0 »
2011-08-28 Changes to MOVE
266
267 Bug Fixes
268 -committed some fixes to ROUND_CONTROL() I had forgot about
b4de1b6e »
2011-08-28 Ships can now keep state to continue performing the same action each tic
269
270
271
20b666cb »
2011-08-24 Changes all over these here parts. This is the edition of the game th…
272 # 2011 08 24
273
274 create_schemaverse.sql - v0.11 - The DC19 Tournament Edition
275 tic.pl - v0.9
276 ref.pl - v0.2
277
278 Rule Alterations and Balancing
279 -Changed Pricing to try and make upgrading a better option
280 -Destroyed ships no longer return the value of the initial ship to the players player.balance (changed in the destroy_ship() trigger)
281 --A new function will need to be created called ~'reset' that puts a player back to the starting game values, destroys all ships, etc.
282 -Queries only get 1 minute of run time if they are ran outside of the script system, down from 2 minutes (change made in ref.pl)
283 -Fleets that run over their limit are automatically set to disabled (change made in ref.pl)
284
285 Bug Fixes
286
287 [create_schemaverse.sql]
288 -SQL Injections all over these here parts
289 -Added NOT NULL to player.balance and player.fuel_reserve
290 -Fixed player_creation trigger issue where new players were not assigned a planet
291 -Can no longer charge a negative quantity for free money added to player.balance
292 -Fixed a ship.last_living_tic bug that would set a ship to destroyed if it's health was diminished to zero during the same tic the ship was created on
293 -my_ships.speed and my_ships.direction are no longer directly updatable because it does not calculate fuel costs when using this method. MOVE() must be used to alter these values
294 -Can no longer create ships where attack, defense, engineering and prospecting are given as values less than zero. This is to resolve one of the top game hacks discovered at DC19.
295 -Move fixes, mostly involving when you give a speed and direction but no destination x,y. This function isn't perfect but it is getting there. The suggestions I received recently will definitely be put to use in the near future to further develop this function.
296 -Fixed round control to start a new round even if it misses the day mark it should have started on
297
298
299 [tic.pl]
300 -Dead ships no longer try to move
301
302
Something went wrong with that request. Please try again.