]> git.lizzy.rs Git - Crafter.git/blob - README.md
Bump up version to 0.06 alpha - redstone update
[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 secure.http_mods = skins
21 max_objects_per_block = 4096
22 max_packets_per_iteration = 10096
23 ```
24
25
26
27 ## This game is in early alpha and uses a lot of experimental features in the engine
28
29 ---
30
31 # ALPHA STATE CHANGELOG
32
33 > <a href="https://github.com/oilboi/Crafter/blob/master/old_changelog.md">Old Version Changelogs</a>
34
35 ## Alpha 0.06
36 > Redstone Update
37
38
39 ---
40
41
42 # IDEAS:
43
44 ## jetpack:
45 - equipped like armor
46 - uses XP
47
48
49 ## REDSTONE:
50 - breaker (mines whatever is in front of it)
51 - dispenser (shoots out first item in inventory, or shoots item into pipe)
52 - piston in general (if node is falling and piston is pointing up then FLING IT, if detects falling node entity FLING IT)
53
54
55 ---
56
57
58
59 ## BUILDTEST:
60 - quarry
61 - filter
62 - siv
63 - mining lazer
64 - trains
65
66
67
68 ---
69
70
71 ## MOBS:
72
73 > #1 idea: weakness items, items that damage the mob more than diamond swords
74
75 ### snowman
76 - you can put a pumpkin on it's head to make it survive when it's not snowing out
77 - drops snowballs, coal, or carrot
78
79 ### sheep
80 - sheep can be punched to drop wool without damage
81 - you can dye a sheep with colored dye and it will change color, then will drop the color you dyed it
82
83
84 ### pig
85 - disable pig aggression
86 - make porkchop look nicer
87
88
89 ### ghosts
90 - make the default player model whited out
91 - ghosts can pass through any nodes
92 - ghosts fly around
93 - will follow you groaning about "diamonds", "need food", and "join us"
94 - they will fling you up in the air or punch you
95 - ghosts can drag you down into nodes and suffocate you
96 - spawn with cave sounds
97 - drop soul
98
99
100 ### node monster
101 - gets built out of nodes in the area
102 - will probabaly destroy you
103 - drops all nodes that it's made of when killed
104
105
106
107 ---
108
109
110 ## Game Mechanics:
111 - brewing
112 - enchanting/upgrading
113 - magic (wands, spells, etc)
114 - better combat ( sweep hit enemies, falling while hitting deals more damage )
115 - Enchanting food - gives buffs
116 - LATE effects https://forum.minetest.net/viewtopic.php?t=20724
117
118
119 ---
120
121
122 ## New Themes
123
124 ### mechanics (mechanical tools and machines)
125 - compressor (compresses nodes down)
126 - auto miner (digs whatever is in front of it)
127 - decompressor (opposite of compressor
128
129
130 ### automation 
131 - pipes
132 - pumps
133 - fluid  transfer
134 - fluid storage
135 - pipes should be able to move objects quickly
136
137
138 ### HALLOWEEN!
139 - Jack O'Lanterns
140 - corn and corn stalks
141 - decorations
142 - cobwebs
143 - costumes (somehow?)
144 - candy
145 - make grass and leaves orange during the month of October
146 - (Use a simple date check and override nodes)
147 - Gravestones
148 - Graveyards
149 - Candles
150 - candy apples
151 - Soul cake, make with cake and soul
152
153
154 ### Farming
155 - add fertilizer (pig drops bone randomly) 
156 - fertilizer is made out of bone - 
157 - fertilizer can make tall grass grow on regular grass
158 - bread - 3 bread in a row
159 - make sandwich with bread and cooked porkchop
160 - fertilizer used on saplings randomly make tree grow (make sapling growth a function)
161
162
163 ### Fishing
164 - enchanted fish
165 - player casts out a better lure if on a boat
166
167
168 ---
169
170
171 ## New Items
172
173 > These don't seem to fit into any theme so list them all here
174
175 - rope and tnt arrows
176 - vehicles (car, powered minecarts, trains)
177 - hitscan flintlocks
178
179
180 ---
181
182
183 ## Ideas
184
185 > These ideas are all over the place but are good for future updates
186
187 - make pistons able to push and pull any node that does not use meta or inv
188 - make pistons able to push and pull deactivated pistons
189 - upgrade minecart physics even more 
190 - make torches abm that checks if player in area
191 - make furnace abm that checks if player in area
192 - make tnt hurt player
193 - rewrite minecart
194 - fix tool rightclick torch placement to replace buildable to nodes
195 - if placed last node put another stack into hand
196 - have falling node hurt player?
197 - add a function to set a velocity goal to entities and then implement it with all entities
198 - ^make a value if below then stop?
199 - colored chat messages
200 - check if everyone is in bed before going to next night
201 - also lock player in bed until they get out or daytime
202 - create a function to check if a node or group is below
203 - ^ set meta for player so that all mods can use it without calculating it
204 - ^ over and over again (saves cpu cycles)
205 - cars buildable in crafting table
206 - require gas pumps refine oil
207 - drive next to gas pump and car will fill with gas
208 - maybe have pump be rightclickable and then manually fill with gass using nozel
209 - minecart car train? - off rail use
210 - automatic step height for off rail use
211 - make cars follow each other
212 - oil which spawns underground in pools
213 - powered minecart car (engine car)
214 - chest minecart car
215 - player controls engine car
216 - make entities push against players
217
218
219 ---
220
221
222 ## Possible Applications
223
224 > causes object to magnetize towards player or other objects and stop after an inner radius
225 > use for better item magnet?
226 ```
227 if object:is_player() and object:get_player_name() ~= self.rider then
228       local player_pos = object:getpos()
229       pos.y = 0
230       player_pos.y = 0
231       
232       local currentvel = self.object:getvelocity()
233       local vel = vector.subtract(pos, player_pos)
234       vel = vector.normalize(vel)
235       local distance = vector.distance(pos,player_pos)
236       distance = (1-distance)*10
237       vel = vector.multiply(vel,distance)
238       local acceleration = vector.new(vel.x-currentvel.x,0,vel.z-currentvel.z)
239       
240       
241       if self.axis == "x"      then
242             self.object:add_velocity(vector.new(acceleration.x,0,0))
243       elseif self.axis == "z" then
244             self.object:add_velocity(vector.new(0,0,acceleration.z))
245       else
246             self.object:add_velocity(acceleration)
247       end
248       
249       - acceleration = vector.multiply(acceleration, -1)
250       - object:add_player_velocity(acceleration)
251 end
252 ```
253
254 If you want to support the project: https://www.patreon.com/oil_boi