Mods / Vintage Engineering
Author: Buggi
Side: Both
Created: Feb 22nd at 4:06 AM
Last modified: 1 day ago
Downloads: 5402
Follow Unfollow 220
Latest file for v1.19.8:
VintageEngineering-0.3.0.zip
1-click install
A WIP (Work in Progress) mod for late-game automation. RTFM below.
Latest Version 0.3.0
- Added Creosote Oven: For making Wood-tar and Coal-tar creosote. Wood-tar creosote will be used in the future (or by other modders) for food. Coal-tar variant will be used for treating wood (not yet implemented). This block is currently not automatable via pipes as it is the test machine for the as yet unfinished new multiblock system.
- Added Blast Furnace: For smelting nuggets and metal bits to ingots. Add powered blowers on each side for faster crafts, hotter temps, and with two powered blowers you can smelt blister steel directly with an iron ingot and coke in the input. Play around with it. Smelting iron without blowers will result in iron bloom, WITH 2 blowers you get iron ingots! Fuel can be auto input from the top of the machine using pipes, of course.
- Added Concrete: Concrete from QPTech has now been fully implemented. Craft the plain variant in the Mixer. For now the style variants can be cycle-crafted in the grid, open to ideas on how to do this better.
- Added Industrial Deco blocks: Deco blocks from QPTech have been added, tweaked, and upgraded! Wood and metal scaffolding, metal stairs, and metal platforms all upgraded and made awesome.
Version 0.2.8
- Added Fluid Pump, place tank or a fluid pipe (extract mode) on the top and power the pump. By far the most power-hungry LV tier block as it will be usable throughout all tiers of the mod. Currently considers any fluid over 10,000 source blocks infinite. Will add a blacklist feature for fluids that we don't want to support infinite of, like...
- Crude Oil and gysers, I've migraded my crude oil mod to VE with NEW features. Now includes gyser generation that should look very familiar to fans of BuildCraft. The Larger gysers appear in desert climates. The oil in 1.20 will be more opaque.
- Added LV Charger, something to charge all those nifty gadgets I know people are itching to make. The most basic way to use this is to ensure your item has durability, then add the tag "chargable":true, to the items attributes and the charger will restore durability using power. See my updated Angel Belt mod for a direct example. Right clicking with the object in your hand will place into the charger and remove it from the charger. The Charger does not have a GUI, but is automatable using pipes or chutes. A HUGE thank you to Yoba for the Charger model.
- Updated LV Gen and metal press to use standard 32x32 textures to maximize the texture atlas efficiency. A HUGE thank you to DallinTG for this.
- Fix for long-standing FPS lag spike when a chunk loads, this was a fun bug-hunt...
- Fixes for Pipes that cross chunk boundries not initializing properly on world load or chunk load.
- Adds Lava to worldgen for hopefully larger lava pools underground. Only spawns in Basalt and deep under the surface. Needed this as I want Lava to be a viable recipe ingredient going forward.
V0.2.4
- Adds Fluid Tanks of various tiers. Lowest tier holds 16 blocks worth of fluid.
- Adds LV Battery for your early power storage needs.
- Various bug fixes.
Version 0.2.1
A massive update to back-end power.
A complete overhaul to the back-end power objects. Players and server should see zero changes in game, the change is seemless behind-the-scenes. But mod authors can now use the new system far easier. The power system interfaces via a Block Entity Behavior now. Check the machine JSON files for more.
PIPES!
For the last 3 months I've been hard at work implimenting item and fluid pipes. And they are ready! Craft them, place them, and right click a node with a wrench to change an insert node to an extract node. You can use upgrades and filters to expand the possibilities. Right click with the filter in your hand to get the GUI to set the options. Please note I had to be very selective on what vanilla game blocks item and fluid pipes connect to.
Handbook
The handbook should now reflect crafting recipes from machines. So a copper rod, for example, shows it's made in the extruder.
You have Smithing Recipes for basic metal items, a clayforming recipe for crafting LV Wire Relays. For getting through this mod, you will need a lot of copper and iron, and some steel. Machine wire connection points are the little gold nubs on the machine, rightclick those with LV Wire in your hand to connect.
Current Machines:
- LV Generator - burns stuff, makes a little bit of power (new power options are planned)
- Crusher - Crushes or Grinds, makes Nuggets, etc. Has 4 modes you can select. Custom recipe can be used as well.
- Extruder - Makes Rods from ingots, Wires from Rods, and screws from rods as well.
- Electric Forge - Heat things up, Auto mode or select-a-temp, will heat up metals before use in Metal Press and Extruder.
- Kiln - Bakes things at high temp: Fire clay, make quicklime, etc. Combines a pitkiln and firepit.
- Log Splitter - Makes firewood.
- Metal Press - Makes plates, gears, and "nails & strips" via press molds that have to be smithed.
- Sawmill - Makes boards from logs.
- CNC - Currently a ClayForm copier. Place raw clay item in Program slot and Clay in the input slot.
- Mixer - Craft with fluids! Recipe supports 4 item + 2 fluid inputs with 1 item and 1 fluid output. Heat can be required for a recipe using the "requirestemp" recipe attribute, heat is supplied by the Electric Forge, place the mixer on top of the forge to heat the mixer.
- Item and Fluid pipes!
- Fluid Pump
- LV Charger
Most of my machines come with custom recipes that other modders can patch, change, remove, add to, and augment via vanilla JSON patching mechanics. So a mod like BrickLayers could add a variety of custom recipes to my machines just by including that directory in their recipes/ path rather that JUST using vanilla JSON props. I includes a bunch of recipes as examples.
All machines can be fed and emptied via vanilla CHUTES and now with PIPES!!!, even the Electric Forge.
For more frequent updates check my discord server #vintage_engineering channel. ("Homepage" link)
Help is welcome for the following areas if you want to contribute:
- Sound effects - must be royalty free so streamers can use the mod without issues.
- Shapes, textures, animations - Making things pretty is not my forte. Quentin from QPTech has gratiously given permission to use his shapes and textures so I can focus on the back-end code more. If you would like to contribute then hit me up on Discord.
- Eventually (hopefully) Large Multiblock machines shapes, textures, sounds, and animations. But will not need this for awhile.
- Localization - Hold off on this as I'm always adding new strings as I add machines and features. Unless you don't mind managing the new language file as I add strings.
- Advanced Handbook entries, "Quest" book? Vies? Is Vies out there?
Thanks to HumbleBolt for the Logo!
I do not need feature ideas/requests. I have a near endless wishlist of things I want to implement, so please wait until the mod is much further along before telling me it's missing something. And a bug report does me no good right now as it's far to early and it's likely I've already fixed the bug, or at least found it.
The exception to above statement is below:
Limiting weekly build access for channel members and patrons. Sorry. This is an enormous mod, already in development for almost a year. The Alpha phase is rough. This alpha build is for those wanting to see the general structure of the system. The JSON back end is all pretty self explanitory and I'll be putting out in-depth API tutorials when the mod is done and the API more final.
Supporters (patrons and channel members) will get weekly updated builds with fixes and new machines and I will look to them for feedback on ideas and features I'm working on.
A lot of the planning and early mod development was covered in streams:
Playlist here: https://www.youtube.com/playlist?list=PLkA9Q5ltQPCIZs88AuqxjgipaX2KPeXQl
If you wish to support the project please consider:
- Donating at https://streamlabs.com/flexiblegames
- Becoming a Patron using the Donate link above
- Become a member of my Youtube channel.
By following this project that will also let me know who out there might be excited for it.
If you wish to help, hit me up on Discord. I primarily need those gifted in modeling and textures. Anything I can just drop in and use without a lot of issues.
Modders:
Please check MakeYourOwnMachine.txt file in mod zip for some early help adding new machines using my API. I'm still adding new machines every week. I'm sure there's someone out there itching to tackle some idea that uses power.
Multiblock shenanigans will happen after the LV stage is done, and the mod is ready for a broader player-base. I have a feeling getting this to work (like Immersive Engineering) will be an interesting challenge. Help appreciated.
For the Electrical and wiring system, I've built systems other modders can easily plug into and use. I've submitted the IElectricalBlockEntity interface to Tyron to integrate into the base game so we have universal support. I hope he accepts it. My wiring system, for example, supports multiple types of wire (AND it's extendable by modders). This is one reason this has taken so long to get to this point.
Lastly, please don't steal my code. The project source will be live on GitHub soon so people can learn from it as it is with all my other mods (and the base game).
Mad respect to Tyron for his work on the API and game thus far, this project has shown me just how much work it has been.
Thank you for your interest!
Special Thanks:
BlueLightning32 for his impressive coding skills and help with everything.
Quentin (QPTech) for permission to use shapes and textures and his work blazing this trail.
Mr. Andy Dandy for some new polished shapes and textures.
HumbleBolt for the logo.
Rinly for the inevitable addon mod I know he's cooking up.
DeathxxRenegade for help with shapes.
VonZeeple for showing me how to properly do wiring, without being able to see how to do it I'd never have figured it out.
Zolkenn for coding help and debugging.
DallinTG for work on shapes and textures.
Automatic_Yoba_Machine for the phenominal Charger model and whatever else the future has in store!
Version | For Game version | Downloads | Release date | Changelog | Download | 1-click mod install* |
---|---|---|---|---|---|---|
v0.3.0 | 72 | 1 day ago | Show | VintageEngineering-0.3.0.zip | Install now | |
v0.2.8 | 1130 | Sep 26th at 5:21 PM | Show | VintageEngineering-0.2.8.zip | Install now | |
v0.2.4 | 938 | Aug 28th at 10:03 PM | Show | VintageEngineering-0.2.4.zip | Install now | |
v0.2.1 | 532 | Aug 14th at 2:35 PM | Show | VintageEngineering-0.2.1.zip | Install now | |
v0.1.4 | 1326 | May 27th at 10:38 PM | Show | VintageEngineering-0.1.4.zip | Install now | |
v0.1.3 | 715 | Apr 23rd at 5:08 PM | Show | VintageEngineering-0.1.3.zip | Install now | |
v0.1.2 | 220 | Apr 18th at 7:04 PM | Show | VintageEngineering-0.1.2.zip | Install now | |
v0.1.1 | 202 | Apr 12th at 8:53 PM | Show | VintageEngineering-0.1.1.zip | Install now | |
v0.1.0 | 76 | Apr 12th at 7:06 PM | Show | VintageEngineering-0.1.0.zip | Install now | |
v0.0.7 | 191 | Mar 24th at 6:01 AM | Show | VintageEngineering-0.0.7.zip | Install now |
:D Thank you!
Working on this now gndrneutralnoun
Is there a way to smelt bits/nuggets into ingots added in this mod? I hate doing it the vanilla way and the ability to bypass it is one of the essential features of QPTech for me.
It would make for a very interesting feature, especially if you could abstract it somehow using a BlockEntityBehavior that could be added to any block that has a BE.
I'm not sure how you could account for every little detail or specific tick-rate demands or how much memory it would consume.
One feature I've thought about was machine upgrades and upgrade slots with one of those upgrades being to 'chunk load' the chunk the machine is in. Very surface level thoughts, though I did figure out how to chunk load. A machine upgrade that does what you describe would also be an option, at some cost.
The problem is so many other systems attempt to communicate with block entities (like the power system, pipes, etc) that integrating the feature into those systems would require some major refactoring as the check to see if a chunk is loaded is base-game, and this would add a whole new layer.
Since I don't think anyone else is really going to be able to step up to the plate to put this to use, and I know for a fact it's going to be a long time before I ever do, my failed project Electrical Revolution has some code that allows machines to work in unloaded chunks that you might find useful. https://github.com/OmegaHaxors/ElectricalRevolution
Basically it works by saving the block entities into a blocklist and saving/loading it to the world whenever the chunk loads or unloads. The idea was to have it create a list of operations to impact upon the world to allow for stuff like interacting with the world while unloaded (such as pushing a block with a piston) but it never really got to that point, but even then you can still have something like a machine that can process its inventory while you're away. Hopefully you can bring this tech to light.
EDIT: to summarize how it works, you operate on the block entity itself. Normally when the chunk unloads the block entity is deleted and when the chunk loads again a new block entity is created containing the information as the old block entity. What my system does is save the block entity into an internal list when the chunk unloads and when the chunk loads again it sets the pointer of the block entity at that location to instead point to the one you have internally. When you shut off the server this internal list is saved so persistence is always maintained. Just typing this out makes me realize there are some really obvious optimizations that can be made but even with that the system is really efficient and robust. If this blocklist ever fails in any way, it falls back to the default system so even if everything breaks horribly it won't affect your gameplay.
So because IDC won't add a quick recipe patch to their mod, it's up to every mod they break to accomidate?
I can't comb the modDB for every possible mod that might break mine, if a mod (like IDC) breaks things because of what they do in their mod, it is really up to them to put the fix in. Flatly removing vanilla items will cause problems eventually.
"one that's unlikely to be resolvable on the IDG side"
Why unlikely? Add a JSON patch editing the recipe of the log splitter changing the axehead to something that works.
I know it's a bit of an ask, but the recipe for the logsplitter produces a crash when also running In Dappled Groves, since your recipe uses an axehead wildcard which is removed by IDG and replaced with the three axehead subvariants; is there any chance we can get a tweak that makes that specific part of the recipe more mod-agnostic? Ingots, plates, etc. I appreciate that thematically, an axehead is the most appropriate, but it's a frustrating crash, and one that's unlikely to be resolvable on the IDG side of things, since the introduction of the various axe types is core to the mod's progression and flow.
QPTech produces an identical crash for the same reason, if you're curious.
Otherwise, I may look into writing a small compatability mod between IDG and VE, as I'm not the only person who's experienced this issue, by the look of things. Currently I have it fixed locally, but that's a hacky and sub-optimal solution that needs to be repeated every time VE is updated.
Either way, love what you're doing and thanks for all the hard work; it's great to see MC-inspired tech mods make their way into VS.
i love this but since i'm focusing on rust magic atm i'm gonna wait on useing this.
@Maestro Very close, my next item on the TODO list for Vintage Engineering is the Charger, once I have that I will be able to update the Angel Belt to have the option of requiring charging.
Limiting by distance would mean you would have to constantly update the distance and all the variables of temporary tracking which would create a heavy load on servers.
Updating a value every second or so when it is enabled is far less overhead for a server.
For the Angel Belt specifically I won't have it require Vintage Engineering as a dependancy, and the option will exist to enable/disable power use.
Now the question becomes, what should be the 'flight time' of one charge?
Heya Buggi... I read over on your Angel Belt mod that you'd be adding "power consumption" and recharging. Is that in the works yet? Would really love for this to be not so overpowered. I was actually thinking about trying to fork yours (as a learning experiment) to make it so that it consumed the temporal gear used to make it. My thought was to limit it by distance traveled, not time, but... it is yours :)
All that said -- how close are we to having the Angel Belt require power replenishment on some front? Thanks!
Translation work should hold off until the LV tier is done or mostly done.
Powered Shaker table certainly possible, quite literally anything is possible at this point.
I have a pump in now working with pipes and tanks. Picture added. Special thanks to DallinTG for the pump shape and animation work!
Hi, do you need help with french translation? If yes how can I help?
What are the odds of a powered shaker table for auto sifting?
v0.2.4 for game version 1.19.8
Many bug fixes regarding pipes and tanks.
Slight Pipe redesign to make them more industrial looking.
New LV Battery! Holds 4000 power and can discharge at 100pps.
Fixed crash bug with workitems in the VE Forge, also workitems properly render in the VE Forge now.
@banderi Completely playable. Early balance yet as the entire mod isn't done, but what is there works great. All the machines in the mod are LV machines right now, only the LV system is built and tested. HV and MV stuff is in, but untested until I get to that step. Stick with LV and you'll be good.
Neuro_Mancer Pipes FTW!! It took 3 months, but they work great!
psychomor Yes, certainly something in the to-do list as we get closer to feature-complete\
Wahazar Going on month 15 of development now. Inspired by Immersive Engineering, but will include a mix-and-match of features of many great well-known MC mods.
Helo. Mod need Guide book or something like this to tell new players how to start make and do things. Stay save.
Is this already playable or still just an early proof of concept? I see lots of machines with MV and HV but only power source is the low voltage burner. Keep up the great work btw!
Buggi
It seems you have heared my prayers. I was yesterday so frustrated with chutes and the QPtech Item pipes (But no hate towards Quentin or anything, it was the best I had), that I seriously thought about stop the game all together.
Wow, nice to see that Immerive Enginnering in VS is still developed
@Azraile - Yes to all that
@Astella - Yes, but QPTech will eventually be depreciated.
Can I use this this with qp tech?
I would suport if it's going to do everything the other mod will, including concreate and turning mechancial power into electricity for the stuff and electricity back into mechanical power (something the QPT lacked)
Thanks for doing this. I love Immersive Engineering and this looks like it's gonna be a lot like it. The more realistic nature should fit in with VS well.
@Annastasija no, this doesn't work with the eletrictiy mod. As far as I know that mod didn't include an API to build on and stole a bunch of my code and UI's.
My mod includes an API for other modders to plug into and build machines of their own, as well as an API for other wiring systems, and will soon include a pipe system for item, fluid, etc movement.
Does this work with the eletrictiy mod? because they look very similar
@Buggi
No stress! Yeah, replicating Create! would be quite the undertaking. Thanks for the reply!
CNC huh? nice.
Exmortis, the only mechanical thing I'm planning on implementing is a mechanical => electrical generator, I am not trying to replicate the Create! mod. I'll let some other poor soul attempt that.
Frepo, yep, that's the inspiration for this mod. I can't use any code or art from that mod, but the general concept is solid. Will even attempt multiblock machines.
Wowzie!! This looks REALLY interesting! Well done, my man!! Looks like Immersive Engineering from 'that other block game' :)
Hey Buggi!
This mod is quite the effort, and I'm extremely excited to see some of the more advanced engineering stuff for Vintage Story so we can get into those massive factories that Minecraft used to have
I am wondering if there's any plans for adding in Lower tech machines that work off the rotational power system already in VS, rather than electricity?
Appreciate your work regardless, modders are what keep this game going!
v0.1.4
Adds CNC: a clay former machine. Put a raw clay item into the program slot and clay in the input slot and it will copy the item. Remember, you can fire clay items in the Kiln! Functionality will be expanded in the future.
Adds Mixer: craft with fluids! While I'm sure uses will eventually be many, currently only one set of example recipes are included. Recipe supports up to 4 item and 2 fluid inputs with 1 item and 1 fluid output.
Mixer also supports the requirement for heating before it will craft a recipe. Use the "requirestemp" attribute in a recipe and place the Mixer ON TOP of the Electric Forge to allow the forge to heat the mixer to the required temp.
Note: The mixer is minimally tested, so I'm sure there are some recipe item/fluid combinations that could break it. Make up some recipes and help me test :)
Awesome! Really looking forward to all the tech mods that will spring up from this, thanks for your hard work :)
based
Yes eventually this mod will take over QPTech, might do like a patch or something to transitition machines eventually. Then QPTech will require VE and start adding its own stuff that uses VE.
It is completely independant of QPTech. Quentin gave me permission to use shapes and textures as he is not interested in refactoring his entire mod (which it would need, badly) and I'm a programmer not an artist.
In our meeting his interest is in giving users of QPTech a transition into Vintage Engineering as seemless as possible. Quentins attention can then go toward what he loves, inventing and pushing into new territory. Now he (and any modder) can just spin up a machine using my base API classes and JSON (see text file in mod zip) and play with new functionality.
Spin up kitchen appliances, farming systems, inventory systems, I built this mod in order to give modders the best chance at expanding the game in any way they can dream of.
Yes, theres a lot of work left for ME in expanding the next tiers of factory machines and power systems, but just know they are coming. I'm about 70% the way through LV tier already.
Buggi
Is this compatable, complemnetary or a fork of QPTech?
0.1.3 fixes the metal press recipe. It's always the little things that escape my scrutiny.
v0.1.2
Adds Metal Block (plain) recipe using 4 plates. There are so many blocks in this game that don't have any way to craft them. It's odd.
Implements ingredient TEMPERATURE requirements for crafting in the metal press and extruder. Heat those items up before you craft with them folks!
Anyone looking at the recipes for these machines will notice "requirestemp" set to -1. This means the machine will use vanilla working temp mechanics (MeltingPoint / 2) to verify an item is the proper temperature.
Major update to 0.1.0, first playable Alpha release working for singleplayer and MP servers.
Simple first-pass recipe progression.
I post my nearly daily progress on my Discord server in the #vintage_engineering channel. Screen shots too!
Link to my discord is the "Homepage" link at the top of this mod page. Since the community preview I've added 4 more machines, squashed a load of bugs, and put out 3 updates to supporters.
Ahh yeah i have noticed that now do appologise i messaged when i was tired well if you do need help let me know Buggi
Um, DrakeBD this isn't misterandydandys mod, not sure why you want him to ping you...
Hit me up on the VS Discord with what you would be requireing and i shall see what i can do for you misterandydandy
DrakeRD I am sure any help would be azmaing at the moment.
Cant wait for this keep up the good word if you need any 3d models let me know im sure i could make some for you have done others in the past
Why not just chunk-load the chunk if it's going to be processing and simulating anyway?
If you ever need a good MNA network builder, Check out Electrical Revolution's github. I cancelled the mod but the network builder code works perfectly well.
Each isolated part acts like its own network with special code to unionize with nearby networks to create one centralized network which handles all the calculations.
Somewhat related there's also some good code that allows you to act on block entities even if they're unloaded, even after you save and quit the game.
Out of everything that I worked on for that mod, that one is probably the thing I was the most dissapointed in having to abandon when I cancelled the mod.
It works by creating a map of blocks (called the blockmap) and copying the block's state to the map. If the block unloads, the state continues to exist within the blockmap as all the code works on it directly. When the chunk is loaded again the blockmap will apply its internal block entity onto the block entity in the world allowing it to do actions. As far as the code is concerned the block is always loaded, and as far as the game is concerned the block is only loaded when the chunk is loaded. The map is also saved and loaded alongside the game allowing persistance across saves.