]> git.lizzy.rs Git - Crafter.git/blob - README.md
Update README.md
[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 # ALPHA STATE CHANGELOG
14
15 > <a href="https://github.com/oilboi/Crafter/blob/master/old_changelog.md">Old Version Changelogs</a>
16
17 ## 0.03
18 > It's A Real Game! Update
19 - make grass spread
20 - water buckets
21 - buckets water farmland
22 - pickaxe required to mine stone based nodes
23 - Crafting bench
24 - Farming with hoes, grass drops seeds, bread, etc
25 - simplify mobs ai
26 - running out of a node when placing tries to replace it with another of the same item in inventory
27 - crafting bench
28 - add in default furnace
29 - add backgrounds to all gui elements
30 - make furnaces drop all items on destroy instead of not allowing you to mine them
31 - added glass - smelt sand
32 - added boat 
33 - rightclicking with tool places torch
34 - add chest
35 - make chest drop all items when you mine them
36 - add in redstone:
37 - torch, repeater, comparator, inverter, piston, player detector,light,
38 - redstone ore - drops 4,5 redstone dust, turns on when punched
39 - pressure plate, detects players (output max), detects items (output based on number of items)
40 - fix item size based on number of items in stack to fixed size
41 - add hoppers
42 - Add TooManyItems
43 - add function to check which nodes drop the item
44 - fix hoppers not activating furnace
45 - make pigs head turn smoothly
46 - Add in fences, walls, windows
47 - Overhaul doors
48 - Add credits screen
49 - Add stairs
50 - Add slabs
51 - 2 Music tracks (day and morning)
52 - Add snow
53 - Fix bed placement
54 - Add snow and snowballs
55 - Make snow falling node
56 - Add creative mode
57 - Add trap chest and sticky piston
58 - Added Et QtFunny font info
59 - Added footers and books
60 - Added rain 
61 - Added Book sounds
62 - Changed TNT sound
63 - Overhauled eating
64 - Add in client weather handling
65 - Add in client movement handling
66 - Made sapling fuel
67 - Fix bed bed, boat, book, sapling, wood, minecart, rail, redstone, and boat placement
68 - Add sounds to redstone dust
69 - make redstone dust an attached node
70 - Fixed treecaptitator not cutting down part of tree when lever is powering one of it's nodes
71 - Added command for users with "server" privelage to control weather
72 - Added craft recipe to shears
73 - Moved to Minetest Engine Version 5.3.0 - DEV
74 - Added slimes
75 - Added mob criticals and client effects
76 - Added stream and river sound effect to client
77 - Moved underground cave noises to client
78 - Add line_of_sight so mobs can't hit you through walls
79 - Add nether prototype
80 - Fix water animation and add default Minetest water texture
81 - Tweak mob direct chase AI
82 - Add rain sound effect
83 - Updated nether prototype
84 - Added lava
85 - Added ichor weather
86 - Added nether portal node and fire
87 - Added in flint and steel, flint, and gravel and enabled dirt and gravel spawning
88 - Made nether portal function
89 - Beds and water explode in the nether
90 - Added better nether portal effect
91 - Make mobs less noisy
92 - Add buckets in
93 - Make buckets use special raycast function
94 - Fix clientside global counters to after statements
95 - Made snow, grass, and torches floodable
96 - Made lava spawn in blobs underground
97 - Added nether ores
98 - Make nether ores randomly explode when mined
99 - Added glowstone and glowstone dust
100 - Rubenwardy fixed error 23
101 - Added in raycast TNT
102 - Merge Treer's group changes
103 - Make TNT cannons possible
104 - Add in Aether prototype dimension (21000-31000 on Y axis)
105 - Added in the early prototype of the VOID (made of bedrock for now)
106 - Treer fixed water spawning in other dimensions
107 - Make it so you can place down beds in the nether and void, but they explode when you try to sleep in them
108 - Made TNT even more efficient, stopped dropping of bedrock and obsidian
109 - Added sugarcane, sugar, and paper
110 - Books are now made out of paper and wood
111 - Made sugarcane grow near water
112 - Organized TooManyItems
113 - Added in 3D player model
114 - Added sneak animation to player model
115 ---
116
117
118 # IDEAS:
119
120
121
122 ## REDSTONE:
123 - breaker (mines whatever is in front of it)
124 - dispenser (shoots out first item in inventory, or shoots item into pipe)
125 - sticky piston (pulls node in front of it)
126 - piston in general (if node is falling and piston is pointing up then FLING IT, if detects falling node entity FLING IT)
127
128
129 ---
130
131
132 ## MOBS:
133
134 > #1 idea, - make mobs pathfind
135
136
137 ### sheep
138 - sheep can be punched to drop wool without damage
139 - you can dye a sheep with colored dye and it will change color, then will drop the color you dyed it
140
141
142 ### pig
143 - disable pig aggression
144 - make porkchop look nicer
145
146
147 ### ghosts
148 - make the default player model whited out
149 - ghosts can pass through any nodes
150 - ghosts fly around
151 - will follow you groaning about "diamonds", "need food", and "join us"
152 - they will fling you up in the air or punch you
153 - ghosts can drag you down into nodes and suffocate you
154 - spawn with cave sounds
155 - drop soul
156
157
158 ### node monster
159 - gets built out of nodes in the area
160 - will probabaly destroy you
161 - drops all nodes that it's made of when killed
162
163
164 ### Exploder
165 - sneaks up on you and then explodes
166 - drops gun powder
167
168
169 ---
170
171
172 ## Game Mechanics:
173 - xp (edit the node drops code to check if node has tag for xp)
174 - brewing
175 - enchanting/upgrading
176 - magic (wands, spells, etc)
177 - better combat ( sweep hit enemies, falling while hitting deals more damage )
178
179
180 ---
181
182
183 ## New Themes
184
185 ### mechanics (mechanical tools and machines)
186 - compressor (compresses nodes down)
187 - auto miner (digs whatever is in front of it)
188 - decompressor (opposite of compressor
189
190
191 ### automation 
192 - pipes
193 - pumps
194 - fluid  transfer
195 - fluid storage
196 - pipes should be able to move objects quickly
197
198
199 ### HALLOWEEN!
200 - lava acts like water in the nether but lava in the other worlds
201 - pumpkins
202 - Jack O'Lanterns
203 - corn and corn stalks
204 - decorations
205 - cobwebs
206 - costumes (somehow?)
207 - candy
208 - make grass and leaves orange during the month of October
209 - (Use a simple date check and override nodes)
210 - Gravestones
211 - Graveyards
212 - Candles
213 - candy apples
214 - Soul cake, make with cake and soul
215
216
217 ### Farming
218 - add fertilizer (pig drops bone randomly) 
219 - fertilizer is made out of bone - 
220 - fertilizer can make tall grass grow on regular grass
221 - bread - 3 bread in a row
222 - make sandwich with bread and cooked porkchop
223 - fertilizer used on saplings randomly make tree grow (make sapling growth a function)
224
225
226 ### Fishing
227 - have a rod that you can cast into water
228 - bobber entity which goes under water when fish on line
229
230
231 ---
232
233
234 ## New Items
235
236 > These don't seem to fit into any theme so list them all here
237
238 - sugar and sugar cane (grow near water on sand)
239 - rope and tnt arrows
240 - vehicles (car, powered minecarts, trains)
241 - hitscan flintlocks
242 - bows
243
244
245 ---
246
247
248 ## Ideas
249
250 > These ideas are all over the place but are good for future updates
251
252 - make pistons able to push and pull any node that does not use meta or inv
253 - make pistons able to push and pull deactivated pistons
254 - upgrade minecart physics even more 
255 - make torches abm that checks if player in area
256 - make furnace abm that checks if player in area
257 - 3d character
258 - make tnt hurt player
259 - rewrite minecart
260 - fix tool rightclick torch placement to replace buildable to nodes
261 - if placed last node put another stack into hand
262 - have falling node hurt player?
263 - add a function to set a velocity goal to entities and then implement it with all entities
264 - ^make a value if below then stop?
265 - colored chat messages
266 - check if everyone is in bed before going to next night
267 - also lock player in bed until they get out or daytime
268 - create a function to check if a node or group is below
269 - ^ set meta for player so that all mods can use it without calculating it
270 - ^ over and over again (saves cpu cycles)
271 - cars buildable in crafting table
272 - require gas pumps refine oil
273 - drive next to gas pump and car will fill with gas
274 - maybe have pump be rightclickable and then manually fill with gass using nozel
275 - minecart car train? - off rail use
276 - automatic step height for off rail use
277 - make cars follow each other
278 - oil which spawns underground in pools
279 - powered minecart car (engine car)
280 - chest minecart car
281 - player controls engine car
282 - make entities push against players
283
284
285 ---
286
287
288 ## Possible Applications
289
290 > causes object to magnetize towards player or other objects and stop after an inner radius
291 > use for better item magnet?
292 ```
293 if object:is_player() and object:get_player_name() ~= self.rider then
294       local player_pos = object:getpos()
295       pos.y = 0
296       player_pos.y = 0
297       
298       local currentvel = self.object:getvelocity()
299       local vel = vector.subtract(pos, player_pos)
300       vel = vector.normalize(vel)
301       local distance = vector.distance(pos,player_pos)
302       distance = (1-distance)*10
303       vel = vector.multiply(vel,distance)
304       local acceleration = vector.new(vel.x-currentvel.x,0,vel.z-currentvel.z)
305       
306       
307       if self.axis == "x"      then
308             self.object:add_velocity(vector.new(acceleration.x,0,0))
309       elseif self.axis == "z" then
310             self.object:add_velocity(vector.new(0,0,acceleration.z))
311       else
312             self.object:add_velocity(acceleration)
313       end
314       
315       - acceleration = vector.multiply(acceleration, -1)
316       - object:add_player_velocity(acceleration)
317 end
318 ```