]> git.lizzy.rs Git - Crafter.git/blob - README.md
Tweak mob magnetic collision detection to work better
[Crafter.git] / README.md
1 <img src="https://github.com/oilboi/Crafter/blob/master/menu/header.png">
2
3 > Designed for Minetest 5.3.0-DEV
4
5 >Built using textures from <a href="https://forum.minetest.net/viewtopic.php?t=16407">Mineclone 2</a> 
6
7 ---
8
9 ## Be sure to install the clientside mod for this game mode: <a href="https://github.com/oilboi/crafter_client">Download here</a>
10
11
12
13
14 ## If you want to run this on a server you must add this to your server minetest.conf:
15
16 ```
17 enable_client_modding = true
18 csm_restriction_flags = 0
19 enable_mod_channels = true
20 ```
21
22
23
24 ## This game is in early alpha and uses a lot of experimental features in the engine
25
26 ---
27
28 # ALPHA STATE CHANGELOG
29
30 > <a href="https://github.com/oilboi/Crafter/blob/master/old_changelog.md">Old Version Changelogs</a>
31
32 ## 0.04
33 > Endless Horizons Update
34
35 - Added in prototype for new mechanics built ontop of the engine
36 - Added cactus
37 - Make cactus hurt player when they touch it using touch_hurt group
38 - Added aether portals
39 - Make flying pigs drop 1-6 gold
40 - Make mobs use builtin minetest.throw_item function (custom)
41 - Double flying pigs sight radius
42 - Add hurt_inside group
43 - Add lava and fire to hurt_inside group
44 - Make mobs get damaged in fire and lava
45 - Add prototype mining lazer
46 - Add prototype gravity gun
47 - Added ice
48 - Make players get suffocated inside solid nodes
49 - Ice now breaks into water
50 - Ice spawns when snowing, replaces water under air
51 - Players sneaking hide nametag
52 - Updated main menu texture to have better brightness/contrast
53 - Turned mobs into API
54 - Added creepig
55 - Flying Pig now throws TNT at player
56 - Redid fishing mechanics
57 - Redid bows and arrows
58 - Added collision detection to mobs
59 - Add fall damage to mobs
60 - Make fishing work
61 - Ice now breaks into water
62 - Added FOV fade
63 - Add experience
64 - Added in shadow to heart statbar
65 - Added enchanting
66 - Add cake and cursed cake
67 - Prevent player from getting suffocated while teleporting
68 - Added in custom breath handling
69 - Made drowning slower
70 - Stopped infinite drowning death
71 - Merged drowning functions with new player functions
72 - Added in gerold55 bubble texture with countdown
73 - Swapped bubble direction
74 - Added in hunger
75 - Tuned hunger
76 - Added block breaking induced hunger exhaustion
77 - Fixed dead players collecting xp
78 - Overhauled hunger
79 - Optimized hunger health regen
80 - Overhauled farming and plants
81 - Fire now uses node timers to run even faster and prevent forest fires from becoming extreme
82 - Crops are now easier to grow
83 - Various farming improvements
84 - Optimized snow to the extreme
85 - Added in broken nether trees
86 - Added in melons and stem growth type plants
87 - Make saplings use node timers with catchup
88 - Made rain look even better
89 - Stop FOV fading from causing motion sickness
90 - Crops are now destroyed if not enough light
91 - Begin experimental treecapitator test
92 - Revert experimental treecapitator test and release experiment as mod
93 - Add in xp debug test
94 - Made minecarts work even "better"
95 - Added in clientside WAILA
96 - Fixed vignette having a streak of pixels across top of screen
97 - Add in 22i's MC mobs
98 - Overhaul mobs and make them use bone based head movement
99 - Add in group_attack setting for mobs
100 - Readded in creeper, phyg, and pig
101 - Fix a lot of things
102 - Fix a lot of deprecated calls
103 - Fixed stone hoes actually being made out of stone
104 - Add in better arrow hit sounds
105 - Overhauled arrows
106 - Added WAIH
107 - Overhaul mobs damage color modifier
108 - Make exploding mobs flash while charging
109 - Fix more deprecated calls
110 - Overhauled spawn command for mobs to use raycasting
111 - Overhaul mobs again
112 - Explosions now fling and hurt mobs
113 - Phygs now flap wings and do not take fall damage
114 - More deprecated call fixed for 3d noise in aether, void, and nether
115 - Fix WAIH crashing with tool that has no tooldef
116 - Fixed boat scaling
117 - Use gerold55's nice xp orb texture
118 - Updated readme.md
119 - Added nitro creeper and it spawns in the nether
120 - Added damage texture modifier
121 - Add in custom explodey mob color modifier
122 - Add in custom blink timer for explodey mobs
123 - Overhauled drowning
124 - Drowning now takes away a full heart
125 - Overhauled mob jumping
126 - Added in 22i's slime model
127 - Exploding mobs now instantly dissapear when detonated
128 - Added in gunpowder and tnt is now made from it
129 - Added in spider
130 - Improved mob jumping
131 - Added in string
132 - Added in fishing - Fishing poles are made from sticks and string
133 - Fixed raw porkchops not being edible
134 - Fixed xp level number scaling huge
135 - Added in cool spider sounds
136 - Snow and ice now melts when not snowing
137 - Implemented mob pathfinding
138 - Add in snowman with 22i's model redesigned by ElCeejo
139 - Add in better particles for eating and treecapitator
140 - Make player model's head pitch follow the player's look pitch
141 - Make music play during certain parts of the day/night
142 - Tweaked collision detection for mobs and make slime collision radius fit their size
143 ---
144
145
146 # IDEAS:
147
148 ## jetpack:
149 - equipped like armor
150 - uses XP
151
152
153 ## REDSTONE:
154 - breaker (mines whatever is in front of it)
155 - dispenser (shoots out first item in inventory, or shoots item into pipe)
156 - piston in general (if node is falling and piston is pointing up then FLING IT, if detects falling node entity FLING IT)
157
158
159 ---
160
161
162
163 ## BUILDTEST:
164 - quarry
165 - filter
166 - siv
167 - mining lazer
168 - trains
169
170
171
172 ---
173
174
175 ## MOBS:
176
177 > #1 idea: weakness items, items that damage the mob more than diamond swords
178
179 ### snowman
180 - you can put a pumpkin on it's head to make it survive when it's not snowing out
181 - drops snowballs, coal, or carrot
182
183 ### sheep
184 - sheep can be punched to drop wool without damage
185 - you can dye a sheep with colored dye and it will change color, then will drop the color you dyed it
186
187
188 ### pig
189 - disable pig aggression
190 - make porkchop look nicer
191
192
193 ### ghosts
194 - make the default player model whited out
195 - ghosts can pass through any nodes
196 - ghosts fly around
197 - will follow you groaning about "diamonds", "need food", and "join us"
198 - they will fling you up in the air or punch you
199 - ghosts can drag you down into nodes and suffocate you
200 - spawn with cave sounds
201 - drop soul
202
203
204 ### node monster
205 - gets built out of nodes in the area
206 - will probabaly destroy you
207 - drops all nodes that it's made of when killed
208
209
210
211 ---
212
213
214 ## Game Mechanics:
215 - brewing
216 - enchanting/upgrading
217 - magic (wands, spells, etc)
218 - better combat ( sweep hit enemies, falling while hitting deals more damage )
219
220
221 ---
222
223
224 ## New Themes
225
226 ### mechanics (mechanical tools and machines)
227 - compressor (compresses nodes down)
228 - auto miner (digs whatever is in front of it)
229 - decompressor (opposite of compressor
230
231
232 ### automation 
233 - pipes
234 - pumps
235 - fluid  transfer
236 - fluid storage
237 - pipes should be able to move objects quickly
238
239
240 ### HALLOWEEN!
241 - Jack O'Lanterns
242 - corn and corn stalks
243 - decorations
244 - cobwebs
245 - costumes (somehow?)
246 - candy
247 - make grass and leaves orange during the month of October
248 - (Use a simple date check and override nodes)
249 - Gravestones
250 - Graveyards
251 - Candles
252 - candy apples
253 - Soul cake, make with cake and soul
254
255
256 ### Farming
257 - add fertilizer (pig drops bone randomly) 
258 - fertilizer is made out of bone - 
259 - fertilizer can make tall grass grow on regular grass
260 - bread - 3 bread in a row
261 - make sandwich with bread and cooked porkchop
262 - fertilizer used on saplings randomly make tree grow (make sapling growth a function)
263
264
265 ### Fishing
266 - have a rod that you can cast into water
267 - bobber entity which goes under water when fish on line
268
269
270 ---
271
272
273 ## New Items
274
275 > These don't seem to fit into any theme so list them all here
276
277 - sugar and sugar cane (grow near water on sand)
278 - rope and tnt arrows
279 - vehicles (car, powered minecarts, trains)
280 - hitscan flintlocks
281 - bows
282
283
284 ---
285
286
287 ## Ideas
288
289 > These ideas are all over the place but are good for future updates
290
291 - make pistons able to push and pull any node that does not use meta or inv
292 - make pistons able to push and pull deactivated pistons
293 - upgrade minecart physics even more 
294 - make torches abm that checks if player in area
295 - make furnace abm that checks if player in area
296 - 3d character
297 - make tnt hurt player
298 - rewrite minecart
299 - fix tool rightclick torch placement to replace buildable to nodes
300 - if placed last node put another stack into hand
301 - have falling node hurt player?
302 - add a function to set a velocity goal to entities and then implement it with all entities
303 - ^make a value if below then stop?
304 - colored chat messages
305 - check if everyone is in bed before going to next night
306 - also lock player in bed until they get out or daytime
307 - create a function to check if a node or group is below
308 - ^ set meta for player so that all mods can use it without calculating it
309 - ^ over and over again (saves cpu cycles)
310 - cars buildable in crafting table
311 - require gas pumps refine oil
312 - drive next to gas pump and car will fill with gas
313 - maybe have pump be rightclickable and then manually fill with gass using nozel
314 - minecart car train? - off rail use
315 - automatic step height for off rail use
316 - make cars follow each other
317 - oil which spawns underground in pools
318 - powered minecart car (engine car)
319 - chest minecart car
320 - player controls engine car
321 - make entities push against players
322
323
324 ---
325
326
327 ## Possible Applications
328
329 > causes object to magnetize towards player or other objects and stop after an inner radius
330 > use for better item magnet?
331 ```
332 if object:is_player() and object:get_player_name() ~= self.rider then
333       local player_pos = object:getpos()
334       pos.y = 0
335       player_pos.y = 0
336       
337       local currentvel = self.object:getvelocity()
338       local vel = vector.subtract(pos, player_pos)
339       vel = vector.normalize(vel)
340       local distance = vector.distance(pos,player_pos)
341       distance = (1-distance)*10
342       vel = vector.multiply(vel,distance)
343       local acceleration = vector.new(vel.x-currentvel.x,0,vel.z-currentvel.z)
344       
345       
346       if self.axis == "x"      then
347             self.object:add_velocity(vector.new(acceleration.x,0,0))
348       elseif self.axis == "z" then
349             self.object:add_velocity(vector.new(0,0,acceleration.z))
350       else
351             self.object:add_velocity(acceleration)
352       end
353       
354       - acceleration = vector.multiply(acceleration, -1)
355       - object:add_player_velocity(acceleration)
356 end
357 ```