ipsis / woot Goto Github PK
View Code? Open in Web Editor NEWThe alternative mob spawner/grinder system
License: GNU Lesser General Public License v3.0
The alternative mob spawner/grinder system
License: GNU Lesser General Public License v3.0
Each factory tier should only support up to a certain level of mob.
eg. Tier I may only support standard mobs up to level 5.
EnderIO registers all skulls plus the Enderman head as itemSkull in the OreDictionary.
Therefore change the recipes if itemSkull is present or if EnderIO is present.
When running against a real server and running a woot command, the output doesn't seem to appear anywhere! You can see the command usage messages but not the output from "woot dump tables" etc.
Need to add an automatic update of the loot tables. Have it clear out half the entries for a mob/looting level when X accesses have been made.
When an upgrade/structure is put beside another block and the upgrade is in the unformed state, then the side will not be rendered.
This is because the unformed block is not a full block.
Need to set shouldSideBeRendered(?)
Add a new upgrade that increases the efficiency of the factory to reduce power usage.
The cost is that you lose one of the upgrade totems of the factory.
There is now way to make the most useful block in the mob - the layout block!
MC 1.9
Forge 1865
Mod version woot-1.9-0.1.0-beta.jar
When I placed a base block on the ground to begin building a structure, the server crashed.
crash report: http://pastebin.com/raw/tazF9G4u
When you hit a mob with a prism and that mob has an xp of 0, then the prism shows an xp of 0. However that is NOT the xp that is required to spawn. The minimum is 1.
Need to investigate the correct UUID use for the fake player.
New factory tier allowing more upgrades, also costs more RF per tick to run.
Size of 11x11 and probably cap stones created with nether stars.
This is probably where the Ender Dragon would go and maybe move the Wither Boss into here as well.
So you would have to kill the Wither Boss the correct number of times to get the nether stars to build this tier.
This tier would probably be the one that would allow two mob controllers.
When the layout block TE is regarded as no longer in view, then the rendering will stop. Granted you have to be close to it to place the blocks in the first place and it is only at certain angles.
Look to see if this is simply a bounding box issue or the global renderer fix is needed
Need to ensure that I'm using markDirty correctly.
From reading, it is used when the TE data has changed and needs to be saved.
I take it from this that anything that you save in NBT for the TE must set markDirty when it changes or you may lose that change on a reload.
Add the conversion recipe when the appropriate mods are available for 1.9
Spawner mob blacklist should be configurable via a config file
Since McJty has released TheOneProbe, let us try and add support for it in Woot.
Now that the basic idea behind the mob is working, I want to look back at the factory construction and recipes.
The efficiency upgrades for the factory have no crafting recipes.
Versions:
Minecraft 1.9.4
Forge 12.17.0.1937
Woot 1.9.4-0.1.0-beta
Do I add support for the EnderDragon?
It would generate quite a bit of XP, it would by VERY expensive to run the factory and it would give you the vanilla Dragon egg.
It would default to disabled and the user would have to enable it.
Not sure if I could pickup mod drops with this one.
Try to find a spare spot on the factory block to support redstone signal to start/stop the factory
I have a tier 3 factory running and stop it from working with a redstone signal through a lever on the block at the back of the factory block. The spawning stops and the factory doesn't drain any more power. If I then remove the redstone signal, the power is drained again and it seems like it is running, but no loot is generated. Unfortunately I couldn't reproduce it in my test pack (see other issue with the multi block not forming), but in my main pack with Version 0.1.0-beta I can. If I break the controller and reattach it, everything works fine again.
Forge Version 12.17.0.1940
Only slimes of size 1 will drop slimeballs. The access transformer that I added for 1.8.9 was disabled when I ported to 1.9. Need to re-enable that to ensure that slimes are spawned as size 1 and that we only learn non-woot killed slime drops when size == 1.
Add the recipes for all the blocks and items.
The factory core blocks should be replaced with tier specific blocks.
Tier I - iron cap
Tier II - gold cap
Tier III - diamond cap
Waila tooltips always say Rate I upgrade
Can we render the programmed mob somewhere within the factory structure.
eg. TileEntityMobSpawnerRenderer/renderMob
Possibly allow a totem of mob controllers on the higher tier factory to allow you to spawn more than one mob.
To generate loot from a slime you need to spawn a slime of size == 1.
To generate loot from a magma cube you need to spawn a magma cube of size > 1.
Slime size is set using a protect method called EntitySlime.setSimeSize.
Vanilla code sets a random size on spawn.
Need to add back the access transformer and set the correct size for each one.
Ender UI energy conduits will connect, but item conduits wont
The accessability and function of the factory block should be reviewed, because if I have level one upgrades on both sides and a full block inventory in front of it to output to (e.g. the modular storage from RFTools for wirless transport across dimensions), I have absolutely no way of accessing it.
Either the functionality with the click should be on the controller instead of the factory or the output needs to be on another block (the one right behind the factory doesn't really have a purpose).
Now that the basics of the mod are in, I want to revisit how mobs are set in the factory.
The initial idea is a factory programmer block. You will basically put in an item containing information on the mob you want to program and the controller block. It would then spit out a programmed controller block for you to attach to the factory. This would replace the "hit the controller with the prism" mechanic.
The use sound for the xp shards is disabled and needs turned back on!
Find some way to visualize the factory layout for each tier, rather than have the user go to an external website.
Since we are only generating 100 drop mappings per mob per enchant level, the chances of getting an enchanted item are pretty low. This also means that there may only be one in the 100, so you always get the same enchants.
So when the enchanted item is in the drops for the factory to produce, clear and randomize the enchantments.
Exception loading model for variant woot:xpShard#inventory
Exception loading model for variant woot:structure_tier_i_cap#inventory
Exception loading model for variant woot:structure_tier_ii_cap#inventory
Exception loading model for variant woot:structure_tier_iii_cap#inventory
That will be a case issue again, when running inside idea IDE
You can capture the Ender Dragon.
It has only 1 xp and no drops.
So pretty much useless.
With Ender IO installed the rate of the head drops seems to be increased significantly since they use the mob heads in a few of the recipes. This makes the decapitation upgrade not so useful anymore, since looting seems to do a very good job in itself. I think that needs some sort of adjustment, otherwise there is no reason to use those upgrades.
In my single player world I also have the mod BaublesStuff installed, which adds a few drops from pigmen (a book and a translator) that I feel should only drop from a true player kill, but I'm not 100% sure. Having it run for a few hours I got about 3000 of those items (and you only ever need about 2 of them in an entire playthrough), so I feel that needs some adjustment.
Versions:
Forge 12.17.0.1952
Woot 0.2.0-beta
EnderIO 3.0.0.36_alpha
EnderCore 0.4.0.23-alpha
When the factory is formed but deactivated, the sound of the factory should not be playing. A config option to disable the sound all together would also be appreciated. An in-game solution would be to click a piece of wool onto the controller like you do in Botania.
Versions:
Forge 12.17.0.1952
Woot 0.2.0-beta
Same problem as in #15.
Port fix back to the 1.8.9 version as well
Although the tooltip for the prism shows that a skeleton is set after killing a wither skeleton, the internal name is Woot:wither.skeleton.
So it is processed as a Wither skeleton and the drops will include "Wither Skelly Heads"
Need to see if we can get the tooltip to display the correct/clearer name.
The only issue of course is that "Wither Skeleton" is probably never mentioned in the MC code, it is just a type 1 skeleton.
The tier required for the mob in the prism is only shown when you insert it into the mob controller.
Adjust the prism tooltip to show you that BEFORE you try and form the multiblock.
I would like to suggest that you integrate the functionality of the layout block into the mob factory block itself or at least place it somewhere else other than the block where the factory is. Having a block that only does one thing for a very limited amount of uses seems unnecessary to me.
Look at the energy costs for each mob and upgrade to set some sensible defaults.
With the move to the loot tables in 1.9, some of the mob drops are no longer happening with a FakePlayer - or I've not coded it correctly.
There does seem to be a "condition": "killed_by_player" which may be part of the issue.
It is set for:
blaze - blaze rods
spider - spider eye
zombie - iron_ingot, carrot, potato
etc
So this needs some investigation.
The coloring for the Tier III layout indicates that the outer ring is purple. However the blocks are really texture blue. It is trivial but easy to fix.
When an instance runs and there are existing mob factories, then all those factories will start generating fake spawns to try to learn the loot drops of that particular mob/looting level.
Although these are configured to be be every 40 ticks by default, it means that all the factories will be trying to learn at the same time, possibly within a few ticks of each other.
It might be wise to have the first learn event be offset by a random value to try and spread this initial learning load out.
I would like to suggest adding some sort of way to see why the multi block isn't forming. I wanted to test something in a test world and created a new pack for it, but the multi block doesn't form and I have no idea why. I rebuilt every way I could think of and nothing happens. In my current main pack I have no problems with it forming. So, it would be nice to see, where the problem actually is. The first time I used it in my survival world I wasn't aware that the next tier requires changes to the previous tier (I think that should also be changed), but I had no idea because the layout block didn't really indicate anything of that sort. A simple message in chat "Block at x,y,z is invalid", like big reactors did it (and blood magic will do it soon), would be very helpful.
Forge 1865
mod: woot-1.9-0.3.0-beta.jar
Crash report: http://pastebin.com/raw/g5LG3Wn9
I have a Tier III with Mass and Fortune upgrades and a blaze in the controller. crashed aft a few minutes of running.
Rather than rely on Waila, when the factory is formed, display the RF/tick cost etc.
Also when right click with an empty hand, show the same information.
The current mob capturing mechanics need looked at. Currently it just involves hitting the relevant mob, so need to decide if that is too simplistic.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.