Dead project. Content removed.
- microjunk
- Registered Member
-
Member for 11 years, 4 months, and 5 days
Last active Thu, Apr, 19 2018 21:09:50
- 2 Followers
- 1,996 Total Posts
- 201 Thanks
-
355
Ri5ux posted a message on [1.12.2] AliensVsPredator (Alien Covenant, The Predator, Prometheus)Posted in: Minecraft Mods -
96
GotoLink posted a message on GotoLink updates: Formivore's options (2015/08/01)...You can access most recent files on my dropbox. All the code is on github.Posted in: Minecraft Mods- How to make an update request
- Words of advice
- Formivore's mods: CARuins, GreatWall and WalledCity Generator
- Drakulix's mod: BetterTallGrass
- PChan3's mods: SteamShip, SteamBoat and Pirates
- Ryan': CreeperSpecies
- Justintib: Quidcraft
- Paraknight : SteamBikes, LawnMower and TV
- Will.Eze : Minecessity
- Clintonio : NatureOverhaul
- Slidedrum : NewDungeons
- Stewiecraft : Handheld Pistons and Redstone Remote
- Stimmedcow : NoMoreRecipeConflict
- PowerUp217 : Level Up!
- Proloe : SteamCraft
- ControllerBlock Team : ControllerBlock
- Jstorey97 : Better Villages
- Paraknight : Skill API and skill packs
- w3(r4ft : Wecraft Mod
- MightyPork : Magic Wands
- oitsjustjose : Mystic Mods
- OgreSean's mods
- Swords Miner : MoreMinecraft!
- Alexmania : WildCaves 3
- BalkondeurAlpha : Freerunner's Mod
- Golui : Sword Pedestal
- GotoLink : Better Sand
- RenEvo : BurpTech
- Satscape : Alarmcraft
- Notch? : Brewing Cauldron
- Clintonio : More Deadly Mobs
- binarydoodler : Zipline
- integerArray : Armor Effect Mod
- Requested mod list
- Any problem ?
- FAQ
- Sources
- Licensing
Read before request : REQUESTS ARE CLOSED
You can take a look at another modder updates here.
Let me warn you that I follow strict rules:
-I only update DEAD mods, I mean the author can't or won't update it any more.The author actually saying it being the best way to prove it. I won't update if anyone is already updating it. It should be your priority to find the mod you like, not mine.
-I only update SOURCE FREE mods, I won't decompile (unless granted official permission) or steal code. (a "license" on the mod shouldn't protect code as "intellectual property")
-I will only update as a FORGE mod, even if the old one wasn't.
If your request answer those rules, please add it on this topic with any useful information.
A request without information and/or not following the rules won't be answered.
You want to make a perfect request that will be considered ?
Follow the guidelines for requesting a mod update then:Hello GotoLink,Words of advice
I enjoyed this mod (link to the mod description)
made by author name
the mod is dead because (some reason here, author quote preferred)
the sources are available (link to the sources, or author quote)
Can you update it ?
Please and thank you
-Make sure your Minecraft version is the,same as the one described. Old versions are accessible in the mod archives.
-When in doubt, use the Forge version described, or the latest.
-Java 8 is not always required, but is very recommended for your safety and best performance.
-Any custom launcher is not supported. Mojang launcher is tested to work.
-Some questions are answered in the FAQ, check it out.
Formivore's mods: CARuins, GreatWall and WalledCity Generator[1.7.10]Latest release: 0.1.9 (forge 10.13.2.1286)Mod installation procedure:
-Fixed crash when using vines in templates
-Fixed "preserve" rule not always applying on walls
-Added "base_layer_mode" option for wall templates, used to defined how bottom layers are added under walls
** 0 for no added layers
** 1 for default layer making (bottom of first layer, or 'layer:base')
** 2 for bottom of each layer
** 3 in 'layer:base', where each line is linked to each layer
0.1.8(forge 10.13.2.1286)
-Minor fixes and optimization
-Improved build command
-Better biome support
0.1.7 (forge 10.13.2.1230)
- Fixed few crashes with building/tower generation
- Added support for json data in chest items
- Added chest handling when using template scanner
0.1.6 (forge 10.12.1.1060)
- Changed mob spawner handling to support modded mobs
- Changed chest content definition to support user-defined chest types
- Moved log file into logs folder
-Changed templates and read-me file to reflect other changes
Release:0.1.5 (forge 10.12.0.1034)
-Changed templates
-Changed "special block" rules
-Cities as official village to vanilla villagers, allowing golem "natural" spawn
-Changed chest content option to use item names
-Allowed block names in template rules
-Added template scanner (/scantml)
-Fixed rotations for GreatWalls and CAruins (some city buildings still need fixing)
Release:0.1.4 (forge 9.11.0.898) with templates
-Fixed MCPC+ crash (re-add awesome lags)
-Fixed biome support in Ruins
-Re-worked settings (invisible to end-user)
Release: 0.1.3 (forge 7.8.0.716 for 1.5.X, forge 9.10.0.777 for 1.6.X)
-Fixed dimension picking issue
-Merged logs into generatormods_log.txt
-Added save and dimension-dependent city location files
-Fixed surface cities being saved 4 times
Release: 0.1.2 (forge 7.8.0.716)
-Fixed issue with ruins
-Fixed stair placement
-Fixed a crashing error in chunk loading
Release: 0.1.1 (forge 7.8.0.716)
-Added more friendly Forge Chunk loading with ticket system
-Added more safety to address MCPC+ server issue
-Added underground city and (optional) dimension id to /build command
-/build command now notifies admin
-Removed dead code
Releases: 0.1.0 (forge 7.7.2.679) 0.1.0b (forge 7.8.0.691)
-Reworked generation, should fix a lot of issue and lag, step toward "infinite city" behavior
-Version b should fix most issues with custom blocks
-Version b add combined chunk explorer, for faster and clever generation
Release:0.0.8 (forge 7.7.2.679)
-Obfuscated "version-independent"
-Removed "missing texture" blocks
-Removed dead code
-Finished custom block support
-Changed lag message to be more user-friendly
Release:0.0.7 (forge 7.7.2.679)
-Added custom dimensions setting
-Added safety and debug system for MCPC+ reported crash
-Little code improvement
-Fixes for stairs metadata
Release:0.0.6 (forge 7.7.1.651)
-Updated to 1.5.1 (and repackage)
-Fixed spawner method (due to changes in Mojang code)
-Support new vanilla blocks (quartz, rail, dropper...)
-------------Below are downloads for Minecraft 1.4.7(note that newest features might not be added)-----
Release:0.0.6 (forge 6.6.2.534)
-Re-implemented chat messages for cities spawning (indicating city spawning point and directionto players (CityChatMessage option disabled by default)
-Changed int parameters (1,0) in config to boolean (true,false), easier for common user
-Stopped spawn if structures are disabled on world creation
-Re-added spawn in custom dimensions (except The End), as there is biome support to disable if needed
-Added more support for custom blocks (stairs, doors, ores, flowers, leaves...)
-Fixed metadata issues ?
-Implemented lag warning and player detection before spawning a structure
-Lag warning and player detection message set by ChatMessage option
-Fixed city message feature
-Fixed Cities spawning in upside Nether
-Some invisible code improvements
Releases:0.0.5-0.0.1
-Added Wither(Boss)[id=343], Bat[id=344], and Witch[id=345] spawners support.
-Added log option in all setting file (default to 0, meaning minimum log)
-Slightly improved "build" command,now :build
-Fixed world leaking issue ?
-Custom biome support
-Added command spawn: build
-WalledCity log now print world name of spawned cities
-Added modinfo file
-Code fixes for rare crashing errors
-Began implementing new functions to support modded biomes,items and blocks (not functionnal)
-Began implementing command features (not functionnal)
-Moved citylocations to walledcitylog
-Fixed structures not spawning far from player spawn point
-Attempt at BiomesOPlenty support
-Added TriesPerChunk variable in config for WalledCity generator
-Fixed Walled City unable to support high BlockID for Blocks spawning in world from other mods
-Fixed structures only generating near coordinates (0,0,0)
-Fixed mod forcing people to install on client if they connect to modded server
-Sandstone city template weight downgraded
-Attempt at ExtraBiomesXL support
-Attempt at dimension-adding mod support
-Chest loots added in every structure
-Settings and templates stored in config folder
1/ Install Forge (latest release is compiled against Forge 10.13.2.1286 with Java 7)
2/ Download this and put it in your mods folder (or mods/'mc version' starting from 1.6.2)
3/ Extract the templates into the config folder
To use on a server, install the mods only on server side.
Each mod can be disabled separately by putting the GlobalFrequency to 0 in the corresponding setting file. These files are generated at the first launch of Minecraft.
You can make your own templates or change the provided ones to your liking by following the original author documentations, and the provided read-me file.
The templates files should be located in config/generatormods/walledcity or config/generatormods/greatwall.
Compatible with:ExtraBiomesXL, BWG4, Biomes o' Plenty, Highlands...
Examples of Ruins block rules, kindly provided by Mackzwellz:
Known Issues with the latest release (0.1.9)
Quote from Namorax
CARuin-properties allows us to determine min/maxheight and various other settings of a generated structure. Is it possible to change the automata rules to include rule-specific structure-settings?For example like this:
<-Some of the usual Structure Rules I included for this example.->MinHeight:20MaxHeight:40ContainerWidth:40ContainerLength:40AUTOMATA RULESB205/S01, weight=1, RuleMinHeight:10, RuleMaxHeight:20 <-Pyramid->B36/S2345, weight=1, <-Tower->
CARuins checks the Automata Rules to see if any additional settings besides B/S and weight were given.When no additional settings are given (See "Tower"), CARuins will use the "usual Structure Rules". But if they are (see "Pyramid"), the structure will be generated using these rules instead.Would it be possible to include something like this or would this require extensive changes to the code?
-Use dim torches from NewDungeons instead of non working torches [0%]
-Add wall separation in config [0%]
-New traps in ruins [0%]
-Add rail-road chance on top of Great Wall[0%]
-Add spawning config(mob/villagers) in cities[10%]
-Spawn specific villagers around specific buildings[1%]
-Move ruins setting to be rule specific instead of global[4%]
-GreatWalls overlapping =>tone down the settings
-Torches don't light properly =>rightclic a torch to fix -not a real issue, this is actually intended by the author for mobs to spawn naturally
Drakulix's mod: BetterTallGrass[1.4.7]
Official author topic
As this mod is a copy,I have now stopped updating it, because primary mod by ejhopkins is updated again.
Mod installation procedure:
1/ Install Forge (latest release is compiled against Forge 6.6.1.524 with Java7)
2/ Download this and put it in your mods folder-------------Below are downloads for Minecraft 1.4.7-----Known Issues with the latest release (1.1)
Latest release:1.1 (forge 6.6.1.524)
-Added Bonemeal support
-Code clean-up
Release:1.0
-Added forge config file for blockID
-Grass textures are now in a common file. Let's hope texture pack makers will submit new ones ^^
The mod block is grey in the creative inventory.
PChan3's mods: SteamShip, SteamBoat and Pirates[1.7.10]
Official author topic
Included textures are originals from Glimmar, check his topic for more. You can find alternative textures at the mod support section.
Each part of the mod can be disabled separately in the "pchan3.cfg" file.
Mod installation procedure:
1/ Install Forge (latest release is compiled against Forge 10.13.0.1185 with Java7)
2/ Download this and put it in your mods folder (or mods/'mc version' starting from 1.6.2)Latest release: 0.7 (forge 10.12.0.1019)Planned for further release:
-Updated to 1.7.2
0.7 (forge 9.11.1.952)
-Updated to 1.6.X
-Fixed flight
-Added spawn config for pirates
-Added "cheats" for flight speed
-Fixed coal and arrows not being consumed properly in survival mode
-Added config options to stop the airship from taking things off the player inventory
Release: 0.6 -0.5(forge 7.8.0.716)
-Changed config system to a "pchan3.cfg" file
-Pirate biome selection complete
-Lowered airship health
-Improved airship sync/rotation
-Fixed inventory
-Added Pchan3 original license
Release: 0.4 (forge 7.7.1.651) 0.4 (forge 7.8.0.691)
-Obfuscated "version-independent"
-Updated to 1.5.1
-Fixed steamboat crash on lilypad
-Fixed crash on server when player interact
-Fixed infinite arrow firing
Release: 0.3 (forge 7.7.0.582)
-Updated to 1.5
-Moved packages and images back into separate files
-Added more options in the config file (now labeled pchan3)
-Steamboat comes back to you if you knock it in creative mode (instead of breaking)
-Began implementing biome config for pirate spawn (in progress)
-------------Below are downloads for Minecraft 1.4.7(note that newest features might not be added)-----
Releases: 0.2 -0.1(forge 6.6.2.534)
-Updated to 1.4.7, with Forge
-SMP support
-Up, down and firing keys for steamship added in minecraft "controls" menu
-Infinite firing arrows in creative mode
-Fixed key crash when pressed out of the world, thanks to estradus for reporting it
-Changed default key setting (to numpad values), so it doesn't conflict with vanilla ones
-Added mcmod.info file
-Added more settings in the config file
-Move the config file to config folder
-Put items textures in a single file
-Added items in creative inventory, at Transport tab.
-Fixed issue with arrow attack not working
-Fixed issue with particles getting called on server side
-Changed recipe for balloon, now with some strings
-Added new AI and ranged attack for Pirates, for more intense air battle
-Steamboat is slower than vanilla boat if not loaded with coal (my logic)
-Both Steamship and Steamboat accept coal from the outside (right click with coal in hand)
-Shift clicking in GUI loads coal and arrows directly into correct slots of Steamship inventory
-Extending the arrow slot to throw other things
Table of Contents
Ryan': CreeperSpecies[1.7.2-1.7.10]
Official topic
ModloaderForge mod, and not open source. Ask on its official topic for new things/bug fixes.
List of updates: (1.7.2 Forge) (1.6.X Forge), (1.5.X); (1.5).
Justintib: Quidcraft[1.7.10]
Official author topic
Mod installation procedure:
1/ Install Forge (latest release is compiled against Forge 10.13.0.1185 with Java7)
2/ Download this and put it in your mods folder (or mods/'mc version' starting from 1.6.2)Latest release: 0.1(forge 7.8.0.716 for 1.5.X, forge 9.11.0.898 for 1.6.XParaknight's mods : SteamBikes, Lawnmower and TV[1.7.10]
, forge 10.12.0.1019 for 1.7.2)
-Obfuscated "version-independent"
-Updated to 1.5.1
-Ported to Forge
-Added mcmod.info file
-Added settings in a config file (mostly item ids)
-Added items in creative inventory, at new "Quidditch" tab
-Added control keys for the broom (access them in controls menu)
-Lot of bug fixes +unstable broom flight + hurtful landing
Official author topic
Mod installation procedure:
1/ Install Forge (latest release is compiled against Forge 10.13.2.1230 with Java7)
2/ Download this and put it in your mods folder or mods/'mc version' starting from 1.6.2
3/ Only required for TV mod: Download this and this, put them in your mods folder
Each part of the mod can be disabled with the "paraknight.cfg" file.Latest release: 1.3 (forge 10.13.2.1230)
-Added Tv mod (with toggle in configuration file, split minecraft-independent libraries)
1.2 (forge 10.12.0.1019)
-Update to 1.7.2
-Fixed lawnmower and bikes breaking too often
1.1 (forge 9.11.0.898)
-Update to 1.6
-Added back sounds into the pack
-Added back LawnMower HUD
-Fixed bikes speed
-Fixed default config
Release: 1.0 (forge 7.8.0.716)
-fixed inventory
-added LawnMower mod into the pack
-changed modid and version number to reflect the changes
Release: 0.1 (forge 7.8.0.716, only with steambikes)
-Obfuscated "version-independent"
-Port to Forge (+added mcmod.info file)
-Lowered item id used by three
-Reworked bike code for motion, rendering, gui handling...
(Original author: Clintonio; banner by Fluffgar)
Official author topic
Mod installation procedure:[1.7.10]
1/ Install Forge (latest release is compiled against Forge 10.13.2.1230 with Java7)
2/ Download this and put it in your mods folder (or mods/'mc version' starting from 1.6.2)
Optional step: Install ModOptionsAPI (for same Minecraft version, obviously)Latest release: 0.10.0 (forge 10.13.2.1230)The API is fully commented and even includes examples.
-Vastly improved default sapling-log-leaves configuration (now world load dependent)
-Fixed dimension blacklist category
0.9.2 (forge 10.13.2.1230)
-Changed lumberjack and sapling-log-leaves option format
-Changed flower tall bushes behavior
0.9.1 (forge 10.13.0.1208)
-Added option for sapling item life span
0.9 (forge 10.13.0.1206)
-Updated to 1.7.10
-Added in-game configuration
-Added biome options
-Improved tree support
0.8(forge 10.12.0.1019)
-Updated for 1.7.2
0.8 (forge 9.11.1.935)
-Added Fire behavior
-Fixed non-burnable logs and leaves
-Improved the API with Events
0.7 (forge 9.11.1.916)
-Complete rewrite of the behavior system, more OOC
-Updated the API consequently
0.6 (forge 9.11.1.916)
-Added full breaking animation when lumberjacking
0.5 (forge 7.8.0.716 for 1.5.X, 9.10.0.835 for 1.6.X)
-Added metadata support
-Changed user added id format, now using : ;saplingid(meta1,meta2)-logid(metaA,metaB,metaC)-leafid(meta0);
0.4 (forge 7.8.0.716)
-Added same default settings in MOAPI as in the config file
-Fixed changes with MOAPI not saved
-Added death for Animals, to balance wild breeding
-Removed some blocks from the fire customization list
0.3 (forge 7.8.0.716)
-Improved tree growth and lumberjack
-MOAPI support
-Randomized growth and wild breeding
-Autofarming-Wild breed free exp fix
-Customizable fire parameters for blocks
0.2 (forge 7.7.2.679)
-Obfuscated "version-independent"
-Fixed custom block support for tree system
-Fixed issue with autosapling
-Added killing leaves setting for lumberjack
-Code improvements (don't register events when unused)
0.1 (forge 7.7.1.674)
-Ported to Forge / SMP
-Added mcmod.info file
-Added old and new settings in a config file (removing Options API requirement)
-Removed all base class edits
-Added growing and dying behaviour for [Cactus ,Reed, Flower, Mushroom, Grass, TallGrass, Mycellium, DeadBush, Mossy Cobblestone, Lilypad, Crops, Melon, Pumpkin, Leaves, Tree, Mushroom Tree, Nether Wart, Cocoa, Apple]
Note that cocoa blocks can drop cocoa beans, and leaves can drop apples or saplings.
-Lumberjack system and Wild breeding re-implemented (with corresponding settings)
-Added a toggle for custom dimensions (note that The End dimension is left out anyway)
-Updated the API too
-Added custom block support (with override in config file)-make NatureOverhaul a requirement for your mod (required-after:natureoverhaul)What I won't do
- -make your block class implements at least one of the interfaces (IBlockDeath, IGrowable) = deprecated option -code the necessary methods for block growing and/or dying
- -make your block extend one of vanilla block
- -extend a Behavior class -code the necessary methods for block growing and/or dying
-Use BehaviorManager#set(blockid, behavior instance) to register your behavior to a block, vanilla or your own
Make every block drop items and grow them like the old version. This was probably causing huge lag with little benefit over simple block changes.
Planned for further release:
-More behaviours ?
Will.Eze : Minecessity[1.7.2-1.7.10]
Official author topic
Mod installation procedure:
1/ Install Forge (latest release is compiled against Forge 10.12.0.1019 with Java7)
2/ Download this and put it in your mods folder (or mods/'mc version' starting from 1.6.2)Latest release: 0.3 (forge 10.13.2.1230)Slidedrum : NewDungeons[1.7.10]
-Remapped item/block names to fix /give
-Made lava slimes 'infant' other lava slimes
-Fixed particles block spawning
-Added sound when interacting with particles block
-Fixed mob attractor not working
0.2 (forge 10.12.0.1019)
-Changed feature: replace particle block gui with simple block interaction
0.1 (forge 7.8.0.691 for 1.5.X, forge 9.11.0.898 for 1.6.X, forge 10.12.0.1019 for 1.7.2)
-Forge port
-SMP port
-Obfuscated "version-independent"
-Code improvements
-New feature: furniture can change of texture with right click (share cycling system with left click)
-New feature: added all wood plank textures in furnitures defaults
-New feature: furniture can catch texture diagonally too
-Removed feature: furniture catching texture from the item you hold
Official author topic
Mod installation procedure:
1/ Install Forge (latest release is compiled against Forge 10.13.0.1185 with Java7)
2/ Download this and put it in your mods folder (or mods/'mc version' starting from 1.6.2)Latest release: 0.3 (1.7.2 forge 10.12.0.1019)Stewiecraft : Handheld Pistons and Redstone Remote[1.7.10]
-Updated for 1.7.2
-Fixed command to spawn dungeons
-Added option to disable custom blocks (dim torches, player-only pressure plate and tripwire)
-Changed loot option to use item/block name
-Fixed tripwire rendering
0.2
-Updated for 1.6
-Ported to Forge
-Cleaned generation code
0.1
Official author topic
Mod installation procedure:
1/ Install Forge (latest release is compiled against Forge 10.13.2.1230 with Java7)
2/ Download this and put it in your mods folder (or mods/'mc version' starting from 1.6.2)Latest release: 0.3 (forge 10.13.2.1230)stimmedcow : NoMoreRecipeConflict[1.8]
-Update to 1.7.10
-Fixed redstone power for multiplayer
-Fixed moving block rendering for custom modeled blocks
0.2 (forge 10.12.0.1019)
-Updated to 1.7.2
-Fixed moving block rendering
0.1 (forge 7.8.0.716 for 1.5.X, forge 9.11.0.898 for 1.6.X)
-Port to Forge
-Added config file for item ids and some redstone remote variable
-Improved code
-Obfuscated "version-independent"
Official author topic
Mod installation procedure:
1/ Install Forge (latest release is compiled against Forge 11.14.1.1350 with Java 8)
2/ Download this and put it in your mods folder (or mods/'mc version' starting from 1.6.2)Latest release: 0.3 (1.7.10, forge 11.14.1.1350 for 1.8)PowerUp217 : LevelUp ![1.8]
-More custom crafting support
-Keep crafting result on shift-click
0.2 (forge 10.13.0.1184 for 1.7.10)
-Added cycle button in crafting gui (enabled by default)
-Changed switch key to disabled by default
-Added config options to choose between key or button
-Added extra checks server side to avoid trouble
0.1 (forge 7.8.0.737 for 1.5.X, forge 9.10.0.835 for 1.6.X, forge 10.12.0.1019 for 1.7.2)
-Port to Forge
-Removed all base class edits
-Added SMP support
-Added mcmod.info and pack.mcmeta files
-Changed left/right keys to custom switch key ('add' by default)
-Obfuscated "version-independent"
Official author topic
Mod installation procedure:
1/ Install Forge (latest release is compiled against Forge 11.14.1.1350 with Java 8)
2/ Download this and put it in your mods folder (or mods/'mc version' starting from 1.6.2)
Latest release: 0.11 (forge 11.14.1.1350)Texture pack:
-Update for 1.8
-Made talisman and respec book models configurable
0.10 (forge 10.13.2.1286)
-Added option to disable FOV based on speed
-Added requirement for farming skill to hold a hoe for crops to grow around
-Made farming skill only drop more if the crop is fully grown
-Added melon drops to farming skill
0.9 (forge 10.13.2.1230)
-Improved death option to a range of values
-Added both unlearning book types into creative menu
-Changed unlearning book option to give the accepted one through crafting
-Improved bow support for archer skill
0.8 (forge 10.13.2.1230)
-Sync some options from server to client
-Added option for bonus points on class picking
-Secured network code to prevent hacks
-Stopped giving mining xp on silk touch
-Improved localization format
-Minor performance improvements
0.7 (forge 10.13.0.1208)
-Added a lot more configuration options
-Added more ore support for Mining
-Fixed internal issue with Xp handling
-Allowed duplicated ores to "interact", for compatibility
0.6 (forge 10.13.0.1206)
-Fixed fishing/digging exploit
-Duplicated ores from Mining skill can no longer be placed
-Digging, Mining and Woodcutting skills now require correct tools for additional drops
-Fixed a potential issue with custom furnaces burning being blocked
-Fixed new breaking speed only supporting default values
-Added configuration options for bonus XP
0.5 (forge 10.13.0.1195)
-Added crop blacklist option for farming skill
0.4 (1.7.2 on forge 10.12.0.1034, 1.7.10 on forge 10.13.0.1185)
-Fixed talisman crafting
-Fixed server thingies
-Stuff noone cares about but me
0.3 (forge 10.12.0.1019)
-Updated for 1.7.2
-Fixed furnace access issue
-Added chinese locals from github, courtesy of m9731526
0.3 (forge 9.11.1.965)
-Use Forge breaking block hook, for digging and mining detection (code optimisation)
-Improved packet checking for setting skill points (code fixing)
0.2 (forge 9.11.1.935)
-Force fixed crash on player data outdatedness
-Fixed player skills disappearing on death
-Removed Skill Gui ability to reset points
-Added class reset to Book of Unlearning, toggeable in config file
-Lowered amount of experience bonus on mining ores
-Changed config names
-Fixed crash while fishing things
-Added config for points given per level
-Fixed farming weirdness for modded plants
-Added more support for ground blocks while digging
-Added more support for eadible items while cooking
-Changed woodcutting to drop corresponding planks from log if craftable. Default to vanilla planks if not.
0.1 (forge 9.10.0.835)
-Port to Forge
-Obfuscated "version-independent"
-Removed all base class edits
-Removed mob buffs (too close to vanilla)
-Added SMP support
-Added mcmod.info and pack.mcmeta files
-Added config file for item ids
-Added custom key for opening GUIs (default to L)
-Added simple text HUD (toggeable in config file, with the original HUD)
-Added all ores (and support for custom ones) into Mining bonus
-Changed: Cooking and Smelting time bonus, require to have the furnace GUI opened, and scaled along skill levels (every 10, increased chance of bonus)
-Changed: Farming bonus requires the farmer to be close to his crops, depending on his farming skill level (higher for greater range)
Made by druha in vonDoomCraft style, get his download.
Table of Contents
Proloe : SteamCraft[1.7.10]
Official author topic and WIKI
Mod installation procedure:
1/ Install Forge (latest release is compiled against Forge 10.12.0.1034 with Java7)
2/ Download this and put it in your mods folder (or mods/'mc version' starting from 1.6.2)Latest release: 0.4 (forge 10.12.0.1034)ControllerBlock Team : ControllerBlock[1.7.10]
-Fixed achievements
-Fixed block sounds
-Fixed block/item harvesting
-Added M.U.D support
0.3 (forge 9.11.1.935 for 1.6.X) (forge 10.12.0.1032 for 1.7.2)
-Added zinc ore generation, smeltable into ingots (suggestion and arts by SolemnSoul)
-Added settings for all types of generation
-Added (back ?) recipes for luminous leaves and wood brass
-Changed brass ingot recipe to use zinc ingot only
-Improved tools to support custom ores
-Added blocks support for custom pickaxes
0.2 (forge 9.11.1.916)
-Fixed Block Tiles, Stair Tiles and Copper wire drop
-Fixed Chemical furnace fuels
-Fixed tools
-Added support for modded items in spanner handling
-Added copper wire recipe
-Added alternative recipe for brass ingot with zinc ingot and refined copper
-Removed steam tools enchantability
-Removed brass armor enchantability
0.1 (forge 9.11.0.898)
-Port to Forge
-Obfuscated "version-independent"
-Removed all base class edits
-Added SMP support
-Added mcmod.info and pack.mcmeta files
-Added config file for item/block ids
-Added interaction between redstone and copper wire
-Added OreDictionary use
-Added Steamcraft Achievement page
-Reduced block/item ids used
-Lots of invisible code improvements
The ControllerBlock is a full fledge Forge mod made from scratch by a team, including my humble self. Its first concept is not new, and you can get the history of this mod and the team here.
Note that the release do not have really good textures. (You can submit new textures !)
Latest version for 1.7.10 is here, compiled with Forge 10.13.0.1208.
Install with corresponding Forge by putting in mods folder.
Changelog1.1: (1.7.10)Mod description
-Fixed block/item data
-Improved networking
-Improved localization support
-Added configuration option
1.0: 1.7.2, 1.6.2, or the 1.5.2 version have the same features.
This mod adds two blocks and two items. Ids can be changed in a config file.Jstorey97 : Better Villages[1.8]
The first block, called the Controller, switch on/off other blocks in the world with corresponding redstone input. You must first place the Controller, then right click it with a Linker item, then blocks can be selected with the Linker by right click. You can add or remove blocks. Linker has description, and chat messages are sent for ease of use.Those are only accessible in the Creative menu.
The second block is called the Animator, and works with the Remote item.
The Animator handles "Frames", unlimited lists of blocks that will appear successively while the Animator is powered. Those blocks must be selected with the Remote.
Here is how you are supposed to make an "animation":
-Put the Animator block somewhere
-Right click it with the Remote item to make the connection
-Right click blocks you want in the first frame (you will receive chat messages doing so)
-Right click the Animator with the Remote to validate the first frame
-Right click blocks you want in the second frame...
-When had enough (or want to test), open the Animator gui by right click the Animator
-Tweak the settings to your liking:
[Max for the number of frame that will be displayed before stop, -1 for infinite]
[Frame for first frame displayed]
[Switch: ORDER,REVERSE,RANDOM,LOOP, for the animation process, corresponding to the order of the frames you set]
[Plus and Minus to set the amount of seconds/ticks (change this display in config file) between each frame displayed]
[Force Reset to reboot those settings to default]
-Put the Remote into the slot and push "Reset Link" to free the Remote-Animator connection.
-Close the gui
-Power the Animator with redstone
-If any changes in the frames is needed, unpower the Animator, repeat from the beginning except for Animator set. (fast selection of a frame can be done into the animator gui, with Frame button)
The Remote itself has a GUI you can bring up with the "Remote Control Key" (default: R).
You can then access some data of linked Animator from afar.
An Animator can be crafted as follow:(diamond on the left and emerald on the right)
A Remote is crafted with a diamond and two iron ingots in a vertical line.
Advanced trick:
Both Linker and Remote have a multiple block (cube pattern) selection mode when player is sneaking.
Official author topic
Mod installation procedure:
1/ Install Forge (latest release is compiled against Forge 11.14.3.1450 with Java 8)
2/ Download this and put it in your mods folder (or mods/'mc version' starting from 1.6.2)Latest release:0.5 (forge 11.14.3.1450)Paraknight : Skill API and compatible packs[1.8]
-Update for 1.8
-Added deducing fence gate block for fields from the fence block option
-Made replacement block module also load json from 'server-resource-packs' folder
0.4 (forge 10.13.2.1230)
-Improved generation
-Fixed fences not being correctly done at times
-Added block replacement module (with customizable json file)
-Added some biome specific replacements for log blocks
0.3 (forge 10.12.0.1013)
-Updated for 1.7.2
-Changed config option to use block names
-Added support for all new biomes
-Changed into jar file
0.2(forge 9.11.1.935)
-Updated for 1.6.4
-Added config file with options
0.1 (forge 9.10.1.858 ! client-side only !))
-Port to Forge
-Obfuscated "version-independent"
-Removed all base class edits
-Added mcmod.info and pack.mcmeta files
Official author topic
Latest release: API 0.1, Pack 0.1 (forge 10.13.2.1230)Mod installation procedure:
-Updated to 1.7.10
API0.1, Pack0.1 (forge 10.12.0.1019)
-Updated to 1.7.2
API0.1, Pack0.1 (forge 9.11.1.916)
-Port to Forge
-Added SMP support
-Removed base class edits
-Added /teach
-Made Mana Potions stackable
-Changed Mana Potions recipe to shapeless with bottle and lapis lazuli
-Changed Skill Book recipe to shapeless
-Obfuscated "version-independent"
1/ Install Forge (latest release is compiled against Forge 11.14.1.1350 with Java 8)
2/ Download the API and put it in mods folder (or mods/'mc version' starting from 1.6.2)
3/ Download pack(s) and follow its installation procedure
To develop a pack, see the github repository
Working packs:
-Generic Skill Pack (put in mods folder)
-Other modders pack i could link here
w3(r4ft : WeCraft Mod[1.7.10]
Official author topic
Mod installation procedure:
1/ Install Forge (latest release is compiled against Forge 10.13.0.1185 with Java 7)
2/ Download this and put it in mods folder (or mods/'mc version' starting from 1.6.2)
Latest release: 0.2 (forge 10.12.0.1019)MightyPork : Magic Wands[1.7.10]
-Updated to 1.7.2
-Fixed bugs with textures
-Fixed bug with griller
-Other code improvements
0.1 (forge 9.11.1.916)
-Port to Forge
-Added mc.modinfo file
-Added pack.mcmeta file
-Changed config file to Forge default
-Changed default ids to higher values
-Changed Time sensor output power to vary with time
-Changed some texture names and updated texture system
-Obfuscated "version-independent"
Official author topic
Mod installation procedure:
1/ Install Forge (latest release is compiled against Forge 10.13.0.1208 with Java 7)
2/ Download this and put it in mods folder (or mods/'mc version' starting from 1.6.2)
Latest release: 1.1.1 (forge 10.13.0.1208)Table of Contents
-Added recipe options
-Made keys able to merge with other registered keys
1.1.0 (forge 10.12.0.1019)
-Updated to 1.7.2
-Changed options to use block names
1.0.0 (forge 9.11.1.916)
-Port to Forge
-Port to SMP
-Added mc.modinfo file
-Added pack.mcmeta file
-Changed config file to Forge default
-Obfuscated "version-independent"
oitsjustjose : Mystic Mods[1.7.10]
Official author topic
Mod installation procedure:
1/ Install Forge (latest release is compiled against Forge 10.13.0.1185 with Java 7)
2/ Download this and put it in mods folder (or mods/'mc version' starting from 1.6.2)
Latest release: MysticMods 0.1 (forge 10.12.0.1034)OgreSean 's mods[1.7.10]
-Merged mystic ruins, ores and stones
-Added mystic world
Mystic Ruins0.1 Mystic Ores0.1 Mystic Stones 0.1(forge 9.11.1.935)
-Improved generation
-Added config file options for custom dimensions and biomes (biome tags are compatible)
-Switched language support to vanilla system
-Obfuscated "version-independent"
Official author topic
Mod installation procedure:
1/ Install Forge (latest release is compiled against Forge 10.13.0.1185 with Java 7)
2/ Download this and put it in mods folder (or mods/'mc version' starting from 1.6.2)
Latest release: 0.3 (forge 10.13.2.1230)Swords Miner : MoreMinecraft![1.7.2-1.7.10]
-Added EasyNPCs
0.2 (1.6.X forge 9.11.1.964) (1.7.2 forge 10.12.0.1019) (1.7.10 forge 10.13.2.1230)
-Added Bats
-Added Deadly Caves
0.1 (forge 9.11.1.935)
-Port to Forge
-Made SMP compatible
-Merged CreeperSwarm, RainingBombSquid and RandomItemSpawn
-Added merged config file, with settings to disable each parts
-Added mcmod.info, pack.mcmeta files
-Obfuscated "version-independent"
Official author page
Mod installation procedure:
1/ Install Forge (latest release is compiled against Forge 10.12.0.1019 with Java 7)
2/ Download this and put it in mods folder (or mods/'mc version' starting from 1.6.2)
Latest release: 0.1 (1.6.X forge 9.11.1.952) (1.7.2 forge 10.12.0.1019)Alexmania : WildCaves 3[1.8]
-Reduced block and item ids used
-Added multiple language support
-Added config file with options
-Made SMP compatible
-Added mcmod.info, pack.mcmeta files
-Obfuscated "version-independent"
Official author page
Mod installation procedure:
1/ Install Forge (latest release is compiled against Forge 11.14.1.1350 with Java 8)
2/ Download this and put it in mods folder (or mods/'mc version' starting from 1.6.2)
Latest release: 0.4.3.7 (1.7.10 forge 10.13.2.1230,1.8 forge 11.14.1.1350)Texture pack:
-Made icicles support more ice blocks
-Added range support for dimension option
0.4.3.6 (forge 10.12.0.1019)
-Updated for 1.7.2
-Added "simple" flooded cave generation
-Fixed a few config options
-Changed block whitelist to use block names instead of id
0.4.3.5 (forge 9.11.1.952)
-Added multiple language support
-Fixed and improved config file
-Fixed stalactite generation in air
-Fixed mushroom lighting
-Added dripping particles
Made by druha in vonDoomCraft style, get his download.
BalkondeurAlpha : Freerunner's Mod[1.7.10]
Official author page
Mod installation procedure:
1/ Install Forge (latest release is compiled against Forge 10.12.0.1208 with Java 7)
2/ Download this and put it in mods folder (or mods/'mc version')
Golui : Sword Pedestal[1.7.10]
Official author page
Mod installation procedure:
1/ Install Forge (latest release is compiled against Forge 10.13.2.1286 with Java 7)
2/ Download this and put it in mods folder (or mods/'mc version')
Latest:GotoLink : Better Sand[1.7.10]
1.1 (forge 10.13.2.1286)
-Fixed network
-Added floating height option
1.0 (forge 10.13.2.1230)
-Updated to 1.7.10
-Removed golui-util dependency
Suggestion page
Mod installation procedure:
1/ Install Forge (latest release is compiled against Forge 10.13.2.1230 with Java 7)
2/ Download this and put it in mods folder (or mods/'mc version')
Table of Contents
RenEvo : BurpTech[1.7.10]
Official author page
Mod installation procedure:
1/ Install Forge (latest release is compiled against Forge 10.13.2.1230 with Java 7)
2/ Download this and put it in mods folder (or mods/'mc version')
Satscape : Alarmcraft[1.8]
Official author page
Mod installation procedure:
1/ Install Forge (latest release is compiled against Forge 11.14.1.1350 with Java 8)
2/ Download this and put it in mods folder (or mods/'mc version')
Notch? : Brewing Cauldron[1.7.10]
Mod installation procedure:
1/ Install Forge (latest release is compiled against Forge 10.13.2.1230 with Java 7)
2/ Download this and put it in mods folder (or mods/'mc version')
Clintonio : More Deadly Mobs[1.8]
Official author page
Mod installation procedure:
1/ Install Forge (latest release is compiled against Forge 11.14.1.1350 with Java 8)
2/ Download this and put it in mods folder (or mods/'mc version')
1.0(forge 10.13.2.1230)
binarydoodler : Zipline[1.7.10]
Official author page
Mod installation procedure:
1/ Install Forge (latest release is compiled against Forge 10.13.2.1230 with Java 7)
2/ Download this and put it in mods folder (or mods/'mc version')
integerArray : Armor Effect Mod[1.8]
Official author page
Mod installation procedure:
1/ Install Forge (latest release is compiled against Forge 11.14.1.1350 with Java 8)
2/ Download this and put it in mods folder (or mods/'mc version')
Requested Mod List:
1.2.0(forge 10.13.2.1230)
-from Coupon's mod updates:
--> MoareAI's mods
--> Grinde's Mods by slanter2010
-ShaRose hoverboat
-2D Craft
Any Problem ?
If you have troubles, find bugs, crashes or suggestions, please do report here...If it is linked with the mods I updated
I also suggest reading "Known Issues" of the mod you use.
If any, enable the log option of the mod before posting a log.
To post log, use pastebin.com or the spoiler button (red exclamation mark).
You can submit issues to Github too.
Far too much Asked Questions
Q: Update x !! lol
A: Read How to make an update request. You can take a look at the requested mod list too.
Q: Does this work in multiplayer ?
A: It should. If not, please report here.
Q: Does this work with ModLoader ?
A: Unless said otherwise in the installation procedure, my updates are using Forge API which has of course ForgeModLoader (FML). Trying to use another ModLoader will result in a crash.
Q: Can you add x city/wall/road type to Walled City/GreatWall mod ?
A: Sorry, I am not that good at building things, and it would take too much time to make.Give me a template for testing, then I could add code/options for it to happen where/when you want.
Q: Is it compatible with x ?
A: x is a forge mod without base class edit ? then yes, very likely. Anyway, you will have to test it for yourself.
Q: When x is going to happen ?
A: I can't predict the future. Go to your local medium/fortune-teller.
Q: Can I make a mod pack with some of this ?
A: Unless said otherwise, my update are open source and not my property, so in most cases, I don't have any right to grant permission, you'll have to ask the author for his official stance. But if you ask me, I would say I am happy to let you do what you want. I recommend you to not gain money from it though, as that would be slightly unfair.
Q: How to install Forge (before 1.6 "Horse" update) ?
A: Explained here. Briefly, start from a clean Minecraft folder. Copy whole content of Forge Universal zip into minecraft.jar, close it, launch Minecraft.
Q: How to install Forge (1.6 "Horse" update and beyond) ?
A: Use the jar installer. How to run is already explained all over the internet.
Q: What are the controls for x ?
A: You decide. They are in the controls menu.
Q: The version number didn't change after a fix ?
A: It is faster for me to replace a old version with a fix than making a new one. Click the main link and don't worry about it.
Sources:
Those are mostly for other modders, you won't need it to make the mod work.
If you are a modder, please tell me what you need it for, so I may help you
Check them on github.
Table of Contents
Licensing:As most work shown here are only continuation of older projects, they come under the previous license their respective owner choose to use.
In case such license is not explicit enough or not considered valid, I grant myself the right to put said work under this perfectly explicit and valid license:
Copyright © 2013-2015 GotoLink
This program is free software.
It comes without any warranty, to the extent permitted by applicable law.
You can redistribute it and/or modify it under the terms of the WTFPL, Version 2, as published by Sam Hocevar.
See http://www.wtfpl.net/ for more details. -
124
Popgalop posted a message on Popgalops Beginner-Advanced Modloader Modding Tutorials (Taking requests)Posted in: Mapping and Modding TutorialsHere i will be posting video tutorials based on users requests. I will be using forge. I try to describe almost all parts off the code in the video. But ask any questions you have.
If their is a problem in one of my tutorials marked as please message me or post
a comment.
Coming Soon
-
9
k2b6s9j posted a message on [1.7.2 FORGE] BoatCraft 2.0.1: The End of the Great Wooden AgePosted in: Minecraft ModsBoatCraftMaintained By: Open Code Developers
Rails had their turn, now out to the Minecraftian seas. Out there we will interact with our boats in ways that we had only dreamed of and ways that we had never thought of before. This mod will overhaul your oceans and how you will experience them. Will you turn your shoreline into an industrial outlet, or will you take advantage of your nearby Seaport and get all the booty you could ever wish for? So go ahead take your world out to sea and never worry about a creeper destroying your rails and pipes again, but watch out because one day you might turn around and see them, the pirate mobs!
Downloads
All approved 'stable' builds of BoatCraft can be found on our GitHub Releases Page, however support on only the latest version will be offered by Open Code Developers.
Feeling a bit risky? Want bleeding edge stuff? Aren't you lucky then that we offer bleeding edge builds on our continuous integration. Unless stated by an Open Code Developers member we will not be offering support for any of these builds.
Support
Support is offered by members of Open Code Developers in the following channels:- The BoatCraft Thread on Minecraft Forums
- The BoatCraft Gitter Chat Room
- The BoatCraft Issue Tracker on GitHub
Ideas and Suggestions
Have an idea you want to share with us? We'd love to hear it! Create an issue on our issue tracker and tell us all about it! We will discuss whether or not it will make it's way into BoatCraft and update you on it's progress if we do it!
License
As per the MIT License that BoatCraft is licensed under you are permitted you use BoatCraft for commercial use, distribute it freely, modify it, and use it privately. You are required to show the BoatCraft License and Copyright when you interact with BoatCraft. And above all you may not hold anyone covered by the BoatCraft License and Copyright liable for damages inflicted while using BoatCraft.
For information on the MIT License, and what it means for you, please visit this page.
For more information on Open Source Software, and what it means for, please visit this page.
Modpacks
Modpacks are considered are re-distribution of BoatCraft, therefore you must follow the terms of redistribution stated above.
Servers
Yes. You can use BoatCraft on your server. And yes, we will support you if you use MCPC+. Just please follow the license like everybody else.
Let's Plays, Spotlights, and other Creations
Yes you may use BoatCraft in your videos and other creations. Again just follow the permissive MIT License.
Translations
BoatCraft will now localize like any other mod! To add a translation just make a pull request with with your translations here.
Source Code
And yes, of course like any open source piece of software our source code is available online for free! -
69
SoBiohazardous posted a message on [1.7.2]SoBiohazardous's Forge Keybinding TutorialHello all,Posted in: Mapping and Modding Tutorials
So I know these tutorials are a bit poop at the moment. However, I am trying to getting around to update them a bit, make them more clear. Just give me some, I have been super busy lately. I'll update them when I can.
Today we're going to learn how to make a custom key bind that shows up in the options menu, which you can change in the options menu, and use for any boolean in your code.
*Note that these are currently for 1.6.4. If you would like to have this for 1.7.2, scroll down, some of the old concepts can be used with the 1.7.2 update tutorial, if you do it right.
Normal Keybind:
Lets start in our main mod file.
In our @Init method, we declare our button like so:
KeyBinding[] key = {new KeyBinding("Name of Button", Keyboard.KEY_G)}; boolean[] repeat = {false}; KeyBindingRegistry.registerKeyBinding(new TutorialKeyBind(key, repeat));
Note that the parameters can be changed to your liking.
Now we are going to create our TutorialKeyBind class. Its set up like a ticking class:
package package.name import java.util.EnumSet; import java.util.Iterator; import net.minecraft.client.settings.KeyBinding; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.item.ItemStack; import net.minecraft.world.EnumSkyBlock; import net.minecraft.world.World; import cpw.mods.fml.client.registry.KeyBindingRegistry.KeyHandler; import cpw.mods.fml.common.TickType; class TutorialKeyBind extends KeyHandler { private EnumSet tickTypes = EnumSet.of(TickType.CLIENT); public TutorialKeyBind(KeyBinding[] keyBindings, boolean[] repeatings) { super(keyBindings, repeatings); } @Override public String getLabel() { return "TutorialKey"; } @Override public void keyDown(EnumSet<TickType> types, KeyBinding kb, boolean tickEnd, boolean isRepeat) { //what to do when key is pressed/down } @Override public void keyUp(EnumSet<TickType> types, KeyBinding kb, boolean tickEnd) { //What to do when key is released/up } @Override public EnumSet<TickType> ticks() { return tickTypes; } }
And that's all! Simply change the comments for what you want your keybind to toggle. Sometimes, I'll create a boolean elsewhere, such as an item class, and call check for it in my tick class.
Applying to gui's
Ok, so i'm assuming you have a working gui, and you want a block/item to open it. You also need a working keybind (look above)
Head over to your keybind class and declare a variable:
public static boolean keyPressed = false;
Now add this to your keyDown method:
keyPressed = true;
and then this to your keyUp method:
keyPressed = false;
This is simple logic to check if your key is pressed or not. Now, simply check in your classes for it.
Applying to Items:
Add this to your item class:
public void onUpdate(ItemStack par1ItemStack, World par2World, Entity par3Entity, int par4, boolean par5) { EntityPlayer player = (EntityPlayer)par3Entity; if(KeyBindSE.keyPressed) { // code for opening gui. //if your not sure, use player.openGui(MAINMODCLASS.instance, YOURGUIID, player.worldObj, (int) player.posX, (int) player.posY, (int) player.posZ); }
Applying to Block:
Add this method in block class:
public void updateTick(World par1World, int par2, int par3, int par4, Random par5Random) { if(keyPressed) { //Gui opening code } }
Simply add your gui opening code in the if statement.
If your having trouble opening gui's, consult the gui tutorials all over the web.
Doing various things to player when key is pressed (basically just getting EntityPlayer object)
First, make a working keybind like the one used in the GUI tutorial.
Then, your going to need a PlayerTickHandler class:
package monkeys.bananas; import java.util.EnumSet; import sobiohazardous.crazyfoods.TutorialKeyBind; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.world.World; import cpw.mods.fml.common.ITickHandler; import cpw.mods.fml.common.TickType; public class PlayerTickHandler implements ITickHandler { private final EnumSet<TickType> ticksToGet; /* * This Tick Handler will fire for whatever TickType's you construct and register it with. */ public PlayerTickHandler(EnumSet<TickType> ticksToGet) { this.ticksToGet = ticksToGet; } /* * I suggest putting all your tick Logic in EITHER of these, but staying in one */ @Override public void tickStart(EnumSet<TickType> type, Object... tickData) { playerTick((EntityPlayer)tickData[0]); } @Override public void tickEnd(EnumSet<TickType> type, Object... tickData) { } @Override public EnumSet<TickType> ticks() { return ticksToGet; } @Override public String getLabel() { return "TutorialPlayerTick"; } public static void playerTick(EntityPlayer player) { if(TutorialKeyBind.keyPressed) { //Code for when the key is pressed. Notice how you have the player parameter } } }
Don't forget to register it like so in your @Init method:
TickRegistry.registerTickHandler(new PlayerTickHandler(EnumSet.of(TickType.PLAYER)), Side.SERVER);
And there you go! Notice the comment in the PlayerTickHandler class, that is how you have access to the player object.
Making it so the key must be "tapped" and not just held down (Thanks to Thobro)
Basically, this is for something like switching modes of an item, ect.
Please read the previous sections, as some of the code is missing in this section.
First, you need to modify your keyDown(*) and keyUp(*) method so it looks similar to this in your keybind class:
public void keyDown(EnumSet<TickType> types, KeyBinding kb, boolean tickEnd, boolean isRepeat) { keyHasBeenPressed = true; } @Override public void keyUp(EnumSet<TickType> types, KeyBinding kb, boolean tickEnd) { if (keyHasBeenPressed) { keyHasBeenPressed = false; keyPressed = true; }
Now from previous sections of this tutorial, you can call
if (KeyBind.keyPressed) { KeyBind.keyPressed = false; //Insert other code }
Now the code should only happen once when the key is pressed and held down.
If you're getting any problems, view the other sections. This correlates heavily with the above sections.
Updating to 1.7.2
So forge has changed a lot in 1.7.2, if you hadn't noticed, so they have completely removed the keybinding class, it just uses key handler now.
Make a new class, I called mine KeyHandlerTutorial.
public class KeyHandlerTutorial // note that before we extended KeyHandler, but that class no longer exists { /** Key index for easy handling */ public static final int CUSTOM_INV = 0; /** Key descriptions; use a language file to localize the description later */ private static final String[] desc = {"key.tut_inventory.desc"}; /** Default key values */ private static final int[] keyValues = {Keyboard.KEY_P}; private final KeyBinding[] keys; public KeyHandler() { keys = new KeyBinding[desc.length]; for (int i = 0; i < desc.length; ++i) { keys[i] = new KeyBinding(desc[i], keyValues[i], "key.tutorial.category"); ClientRegistry.registerKeyBinding(keys[i]); } } /** * KeyInputEvent is in the FML package, so we must register to the FML event bus */ @SubscribeEvent public void onKeyInput(KeyInputEvent event) { // FMLClientHandler.instance().getClient().inGameHasFocus if (!FMLClientHandler.instance().isGUIOpen(GuiChat.class)) { if (keys[CUSTOM_INV].isPressed()) { TutorialMain.packetPipeline.sendToServer(new OpenGuiPacket(TutorialMain.GUI_CUSTOM_INV)); } } } }
The comments along the way should help you figure it out.
Be sure to register the class as an event!
FMLCommonHandler.instance().bus().register(new KeyHandlerTutorial())
Carry over and then delete your old keybinding code. You should be good to go.
Special thanks to coolAlias
Tips
Need the world object?
World world = Minecraft.getMinecraft().theWorld;
That is a variable of the type World that should help you if you are in a pinch.
Also, here is some examples of various keybind things by coolAlias.
Leave reply's if help is needed.
Leave aIf this helped you!
-
7
Davidee posted a message on [1.7.2][Forge] Better Spawn Eggs! Now spawn Chicken Jockeys!
This mod adds new spawn eggs to the game. These spawn eggs can contain NBT data which will be used to modify the spawn egg's properties/entity information. By default, the mod duplicates the vanilla spawn eggs and adds special mobs like Powered Creepers, Wither Skeletons, Villager Zombies, etc.
For map makers, you have a lot of choices. You can use the pre-defined spawn eggs by simply changing the item damage - no need to even add other NBT tags. However, if you want a custom mob, you can modify the NBT tags on ANY of the mod's spawn eggs, although modifying the "Custom" egg (damage=0) is recommended. For more information, please visit the GitHub page.
Videos
Download- Requires Minecraft Forge - download the installer
- Better Spawn Eggs v1.7.2.0
OLDER VERSIONS- Better Spawn Eggs v1.6.2.2
- Better Spawn Eggs v1.6.2.1
- Better Spawn Eggs v1.6.2.0
- Better Spawn Eggs v1.6.1.0 (initial release)
Installation
- Download the Forge installer
- If desired, backup your saves.
- Run the Forge installer
- Paste the BetterSpawnEggs zip file into your mods folder.
- In order to play the Forge version, you need to change your profile on the new minecraft launcher to the "Forge" one
-
11
coolAlias posted a message on [1.6.4] Structure Generation Mod and APIStructure Generation API / ModPosted in: Minecraft Mods
This is a tool I created for those of you who don't want to use schematics, for whatever reason, to generate structures in your world. It allows you to design and generate custom structures as well as rotate and offset your custom structures as they are generated in the world. Additionally, there are methods that allow you to set custom tile entity data, spawn entities or whatever else you can imagine.
Be sure to check out the screenshots below!
Download the ready-to-play demo mod from Adf.ly or direct, or get the source from Github.
Tutorial Part 1: Your First Structure
Tutorial Part 2: Using Custom Hooks
Features- Linked Structure Generator let's you generate multiple structures at a time with specified location and rotation
- Add custom structures to the world during world generation
- Generate custom structures in the world with the click of a button
- Auto-rotation of structures ensures it will always face the player, if desired
- Default offset will place the structure so it never spawns on top of the player
- Ability to manually change a structure's rotation or offset before spawning
- Full metadata block rotation compatibility
- Compatibility with custom blocks; just use addCustomBlockRotation to define its rotation type
- Set any block as a 'buffer' so your structure spawns more naturally in the environment
- Custom 'hooks' allow you to easily manipulate tile entity data or perform other tasks
- Place blocks where they can't otherwise be placed, such as trapdoors on glass or torches in air
- Preview mode let's you see where the structure will generate
- Easily add new items capable of generating structures by extending ItemStructureSpawnerBase, working seamlessly with the ready-made key bindings, packet handling and preview highlighting mode
There are a number of pre-written methods to allow easy manipulation of your structure, from adding loot to decorating as you see fit. These methods can be accessed by using an out-of-bounds block id to trigger the 'hook' method 'onCustomBlockAdded'. For the full instructions, see StructureArrays.java.- Add items to any tile entity inventory with a single method
- Spawn entities without fear of spawning in a wall
- Add hanging entities such as item frames or paintings
- Set items in placed item frames
- Set art for paintings
- Add text to signs, with color example
- Place any kind of mob head
- Reading structures from a file to avoid compile-time size limitations (big maybe)
- Possiblity to require materials needed for structure (currently used in my RedstoneHelper mod)
- Large entities such as horses have problems spawning in confined spaces
NOW SMP Compatible!
A ready-to-go mod that will help familiarize you with the capabilities and functionality of the Structure Generation Tool. There is currently no recipe for the item that spawns structures, so try it in Creative.
Several structures are included and can be easily toggled between in-game:- "Hut" - A highly modified village hut. Enter at your own risk.
- "Blacksmith" - Vanilla blacksmith shop. Thanks to Microjunk for this one!
- "Viking Shop" - A cool viking-style shop, but riddled with holes from disuse. Credit again to Microjunk.
- "Redstone Dungeon" - Can you find the treasure and live to tell about it?
- "Watermill" - An awesomely impressive water/windmill, courtesy of Microjunk.
- "Redstone Portcullis" - A design by PearSquirrel, coded by me
- Sneak to highlight area in which structure will generate
- 'Arrow Keys' - up: moves structure away from player; down: moves structure towards/behind player; left / right of course move the structure left / right
- 'O' - changes structure's default orientation by 90 degrees. This will have the effect of changing which side spawns facing the player.
- 'I' - toggles between increment and decrement y offset
- 'Y' - increments or decrements y value to offset spawn location
- 'U' - reset x/y/z offsets to 0
- 'V' - toggles between generate / remove structure - when removing, be sure to click the EXACT position you clicked when spawning it (easier to do with highlighting enabled)
- ' [ ' / ' ] ' - Previous / Next structure in the list
- Right click - spawn / remove structure at tile location clicked
Or use coolAliasStructureWorldGenDemo.zip to try out randomly generated structures dotting your landscape! Initial world loading times will be longer than normal.
Installation
Requires Forge. Written for and tested with Minecraft version 1.6.4 and Forge build 916.
DEMO MOD- Download the pre-compiled and zipped mod file and place it in your minecraft/mods folder. You're good to go!
- Alternatively, follow the directions below to add the 'StructureGenMod' files to your project, giving you access to a secondary API for easily creating new Items capable of spawning structures with all the pre-made functionality.
- Download the 'StructureGenAPI'
- Place the entire folder either in your project or as a required project on your project's build path
- Build your own structures / structure arrays by following the guidelines in the Instructions
- If you are using custom hooks, either edit the included StructureGenerator.java file or create your own class that extends StructureGeneratorBase to handle your custom hooks
- Use your StructureGenerator class to generate your structures from whatever location you choose, such as a block or item, or create a class that implements IWorldGenerator (such as the included WorldStructureGenerator) to generate structures during world generation
Screen Shots
New Preview Mode let's you see exactly where the structure will be placed
Showing structures generated randomly as part of world gen, all at different rotations (kind of hard to see, sorry)
Showing off some of the latest features: sign text, selected painting art, items in item frames, mob heads. Note that this is all done automatically upon structure generation - I don't have to set anything by hand.
Wonder what that lever does?
Redstone exposed! Fully automated generation set and ready to go at any rotation or offset.
Breaking the block limit barrier! Witness the 15-story tower of power, er, I mean, blacksmith tower. At 480 blocks apiece, this is a total of 7200 blocks, significantly greater than static array initialization limitsThis was just a test, but you could probably build any size structure this way. Be warned, it gets laggy. This structure took around 3-5 seconds to show up (in Eclipse development environment)
About the maximum size you can make a single layer: 68x50 = 3400 blocks
A giant block made by a structure with 50 layers of the above max base:
Rows of houses I spawned without taking a single step.
A structure correctly removed after generated - note that blocks that can drop as items often do:
An incorrectly removed structure - I spawned it on the block where the stairs go, so when I tried to remove it my 'y' position was one block higher due to the stairs:
Limitations
World Gen
The algorithms I use to place structures are currently not very sophisticated. You will get structures generating on top of or inside of each other at times, especially if you generate lots of them. They may also generate on village rooftops. I just included it to show that the API is not limited to onItemRightClick or onBlockActivated style methods, but is in fact much more flexible.
Array Size
Due to the maximum byte limit of static initializers, the structure array size cannot exceed 65535 bytes. What this means for you is that a single horizontal layer of your structure cannot exceed roughly 3400 blocks in area, so about a 68x50 rectangular base, judging by my tests so far.
You would then build your structure by adding layers to the generator list. See StructureArrays.java for complete details on how to go about this.
If your structure is very large (more than 3 or so maxed static arrays), you will probably need to store them in separate files or you will get a compile time error.
License
/**
Structure Generation Tool
Copyright © <2013> <coolAlias>
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
GNU GENERAL PUBLIC LICENSE
Version 3, 29 June 2007
Copyright © 2007 Free Software Foundation, Inc. <http://fsf.org/>
Everyone is permitted to copy and distribute verbatim copies of this license document, but changing it is not allowed.
Preamble
The GNU General Public License is a free, copyleft license for software and other kinds of works.
The licenses for most software and other practical works are designed to take away your freedom to share and change the works. By contrast, the GNU General Public License is intended to guarantee your freedom to share and change all versions of a program--to make sure it remains free software for all its users. We, the Free Software Foundation, use the GNU General Public License for most of our software; it applies also to any other work released this way by its authors. You can apply it to your programs, too.
When we speak of free software, we are referring to freedom, not price. Our General Public Licenses are designed to make sure that you have the freedom to distribute copies of free software (and charge for them if you wish), that you receive source code or can get it if you want it, that you can change the software or use pieces of it in new free programs, and that you know you can do these things.
To protect your rights, we need to prevent others from denying you these rights or asking you to surrender the rights. Therefore, you have certain responsibilities if you distribute copies of the software, or if you modify it: responsibilities to respect the freedom of others.
For example, if you distribute copies of such a program, whether gratis or for a fee, you must pass on to the recipients the same freedoms that you received. You must make sure that they, too, receive or can get the source code. And you must show them these terms so they know their rights.
Developers that use the GNU GPL protect your rights with two steps: (1) assert copyright on the software, and (2) offer you this License giving you legal permission to copy, distribute and/or modify it.
For the developers' and authors' protection, the GPL clearly explains that there is no warranty for this free software. For both users' and authors' sake, the GPL requires that modified versions be marked as changed, so that their problems will not be attributed erroneously to authors of previous versions.
Some devices are designed to deny users access to install or run modified versions of the software inside them, although the manufacturer can do so. This is fundamentally incompatible with the aim of protecting users' freedom to change the software. The systematic pattern of such abuse occurs in the area of products for individuals to use, which is precisely where it is most unacceptable. Therefore, we have designed this version of the GPL to prohibit the practice for those products. If such problems arise substantially in other domains, we stand ready to extend this provision to those domains in future versions of the GPL, as needed to protect the freedom of users.
Finally, every program is threatened constantly by software patents. States should not allow patents to restrict development and use of software on general-purpose computers, but in those that do, we wish to avoid the special danger that patents applied to a free program could make it effectively proprietary. To prevent this, the GPL assures that patents cannot be used to render the program non-free.
The precise terms and conditions for copying, distribution and modification follow.
TERMS AND CONDITIONS
0. Definitions.
“This License” refers to version 3 of the GNU General Public License.
“Copyright” also means copyright-like laws that apply to other kinds of works, such as semiconductor masks.
“The Program” refers to any copyrightable work licensed under this License. Each licensee is addressed as “you”. “Licensees” and “recipients” may be individuals or organizations.
To “modify” a work means to copy from or adapt all or part of the work in a fashion requiring copyright permission, other than the making of an exact copy. The resulting work is called a “modified version” of the earlier work or a work “based on” the earlier work.
A “covered work” means either the unmodified Program or a work based on the Program.
To “propagate” a work means to do anything with it that, without permission, would make you directly or secondarily liable for infringement under applicable copyright law, except executing it on a computer or modifying a private copy. Propagation includes copying, distribution (with or without modification), making available to the public, and in some countries other activities as well.
To “convey” a work means any kind of propagation that enables other parties to make or receive copies. Mere interaction with a user through a computer network, with no transfer of a copy, is not conveying.
An interactive user interface displays “Appropriate Legal Notices” to the extent that it includes a convenient and prominently visible feature that (1) displays an appropriate copyright notice, and (2) tells the user that there is no warranty for the work (except to the extent that warranties are provided), that licensees may convey the work under this License, and how to view a copy of this License. If the interface presents a list of user commands or options, such as a menu, a prominent item in the list meets this criterion.
1. Source Code.
The “source code” for a work means the preferred form of the work for making modifications to it. “Object code” means any non-source form of a work.
A “Standard Interface” means an interface that either is an official standard defined by a recognized standards body, or, in the case of interfaces specified for a particular programming language, one that is widely used among developers working in that language.
The “System Libraries” of an executable work include anything, other than the work as a whole, that (a) is included in the normal form of packaging a Major Component, but which is not part of that Major Component, and (serves only to enable use of the work with that Major Component, or to implement a Standard Interface for which an implementation is available to the public in source code form. A “Major Component”, in this context, means a major essential component (kernel, window system, and so on) of the specific operating system (if any) on which the executable work runs, or a compiler used to produce the work, or an object code interpreter used to run it.
The “Corresponding Source” for a work in object code form means all the source code needed to generate, install, and (for an executable work) run the object code and to modify the work, including scripts to control those activities. However, it does not include the work's System Libraries, or general-purpose tools or generally available free programs which are used unmodified in performing those activities but which are not part of the work. For example, Corresponding Source includes interface definition files associated with source files for the work, and the source code for shared libraries and dynamically linked subprograms that the work is specifically designed to require, such as by intimate data communication or control flow between those subprograms and other parts of the work.
The Corresponding Source need not include anything that users can regenerate automatically from other parts of the Corresponding Source.
The Corresponding Source for a work in source code form is that same work.
2. Basic Permissions.
All rights granted under this License are granted for the term of copyright on the Program, and are irrevocable provided the stated conditions are met. This License explicitly affirms your unlimited permission to run the unmodified Program. The output from running a covered work is covered by this License only if the output, given its content, constitutes a covered work. This License acknowledges your rights of fair use or other equivalent, as provided by copyright law.
You may make, run and propagate covered works that you do not convey, without conditions so long as your license otherwise remains in force. You may convey covered works to others for the sole purpose of having them make modifications exclusively for you, or provide you with facilities for running those works, provided that you comply with the terms of this License in conveying all material for which you do not control copyright. Those thus making or running the covered works for you must do so exclusively on your behalf, under your direction and control, on terms that prohibit them from making any copies of your copyrighted material outside their relationship with you.
Conveying under any other circumstances is permitted solely under the conditions stated below. Sublicensing is not allowed; section 10 makes it unnecessary.
3. Protecting Users' Legal Rights From Anti-Circumvention Law.
No covered work shall be deemed part of an effective technological measure under any applicable law fulfilling obligations under article 11 of the WIPO copyright treaty adopted on 20 December 1996, or similar laws prohibiting or restricting circumvention of such measures.
When you convey a covered work, you waive any legal power to forbid circumvention of technological measures to the extent such circumvention is effected by exercising rights under this License with respect to the covered work, and you disclaim any intention to limit operation or modification of the work as a means of enforcing, against the work's users, your or third parties' legal rights to forbid circumvention of technological measures.
4. Conveying Verbatim Copies.
You may convey verbatim copies of the Program's source code as you receive it, in any medium, provided that you conspicuously and appropriately publish on each copy an appropriate copyright notice; keep intact all notices stating that this License and any non-permissive terms added in accord with section 7 apply to the code; keep intact all notices of the absence of any warranty; and give all recipients a copy of this License along with the Program.
You may charge any price or no price for each copy that you convey, and you may offer support or warranty protection for a fee.
5. Conveying Modified Source Versions.
You may convey a work based on the Program, or the modifications to produce it from the Program, in the form of source code under the terms of section 4, provided that you also meet all of these conditions:
a) The work must carry prominent notices stating that you modified it, and giving a relevant date.
The work must carry prominent notices stating that it is released under this License and any conditions added under section 7. This requirement modifies the requirement in section 4 to “keep intact all notices”.
c) You must license the entire work, as a whole, under this License to anyone who comes into possession of a copy. This License will therefore apply, along with any applicable section 7 additional terms, to the whole of the work, and all its parts, regardless of how they are packaged. This License gives no permission to license the work in any other way, but it does not invalidate such permission if you have separately received it.
d) If the work has interactive user interfaces, each must display Appropriate Legal Notices; however, if the Program has interactive interfaces that do not display Appropriate Legal Notices, your work need not make them do so.
A compilation of a covered work with other separate and independent works, which are not by their nature extensions of the covered work, and which are not combined with it such as to form a larger program, in or on a volume of a storage or distribution medium, is called an “aggregate” if the compilation and its resulting copyright are not used to limit the access or legal rights of the compilation's users beyond what the individual works permit. Inclusion of a covered work in an aggregate does not cause this License to apply to the other parts of the aggregate.
6. Conveying Non-Source Forms.
You may convey a covered work in object code form under the terms of sections 4 and 5, provided that you also convey the machine-readable Corresponding Source under the terms of this License, in one of these ways:
a) Convey the object code in, or embodied in, a physical product (including a physical distribution medium), accompanied by the Corresponding Source fixed on a durable physical medium customarily used for software interchange.
Convey the object code in, or embodied in, a physical product (including a physical distribution medium), accompanied by a written offer, valid for at least three years and valid for as long as you offer spare parts or customer support for that product model, to give anyone who possesses the object code either (1) a copy of the Corresponding Source for all the software in the product that is covered by this License, on a durable physical medium customarily used for software interchange, for a price no more than your reasonable cost of physically performing this conveying of source, or (2) access to copy the Corresponding Source from a network server at no charge.
c) Convey individual copies of the object code with a copy of the written offer to provide the Corresponding Source. This alternative is allowed only occasionally and noncommercially, and only if you received the object code with such an offer, in accord with subsection 6b.
d) Convey the object code by offering access from a designated place (gratis or for a charge), and offer equivalent access to the Corresponding Source in the same way through the same place at no further charge. You need not require recipients to copy the Corresponding Source along with the object code. If the place to copy the object code is a network server, the Corresponding Source may be on a different server (operated by you or a third party) that supports equivalent copying facilities, provided you maintain clear directions next to the object code saying where to find the Corresponding Source. Regardless of what server hosts the Corresponding Source, you remain obligated to ensure that it is available for as long as needed to satisfy these requirements.
e) Convey the object code using peer-to-peer transmission, provided you inform other peers where the object code and Corresponding Source of the work are being offered to the general public at no charge under subsection 6d.
A separable portion of the object code, whose source code is excluded from the Corresponding Source as a System Library, need not be included in conveying the object code work.
A “User Product” is either (1) a “consumer product”, which means any tangible personal property which is normally used for personal, family, or household purposes, or (2) anything designed or sold for incorporation into a dwelling. In determining whether a product is a consumer product, doubtful cases shall be resolved in favor of coverage. For a particular product received by a particular user, “normally used” refers to a typical or common use of that class of product, regardless of the status of the particular user or of the way in which the particular user actually uses, or expects or is expected to use, the product. A product is a consumer product regardless of whether the product has substantial commercial, industrial or non-consumer uses, unless such uses represent the only significant mode of use of the product.
“Installation Information” for a User Product means any methods, procedures, authorization keys, or other information required to install and execute modified versions of a covered work in that User Product from a modified version of its Corresponding Source. The information must suffice to ensure that the continued functioning of the modified object code is in no case prevented or interfered with solely because modification has been made.
If you convey an object code work under this section in, or with, or specifically for use in, a User Product, and the conveying occurs as part of a transaction in which the right of possession and use of the User Product is transferred to the recipient in perpetuity or for a fixed term (regardless of how the transaction is characterized), the Corresponding Source conveyed under this section must be accompanied by the Installation Information. But this requirement does not apply if neither you nor any third party retains the ability to install modified object code on the User Product (for example, the work has been installed in ROM).
The requirement to provide Installation Information does not include a requirement to continue to provide support service, warranty, or updates for a work that has been modified or installed by the recipient, or for the User Product in which it has been modified or installed. Access to a network may be denied when the modification itself materially and adversely affects the operation of the network or violates the rules and protocols for communication across the network.
Corresponding Source conveyed, and Installation Information provided, in accord with this section must be in a format that is publicly documented (and with an implementation available to the public in source code form), and must require no special password or key for unpacking, reading or copying.
7. Additional Terms.
“Additional permissions” are terms that supplement the terms of this License by making exceptions from one or more of its conditions. Additional permissions that are applicable to the entire Program shall be treated as though they were included in this License, to the extent that they are valid under applicable law. If additional permissions apply only to part of the Program, that part may be used separately under those permissions, but the entire Program remains governed by this License without regard to the additional permissions.
When you convey a copy of a covered work, you may at your option remove any additional permissions from that copy, or from any part of it. (Additional permissions may be written to require their own removal in certain cases when you modify the work.) You may place additional permissions on material, added by you to a covered work, for which you have or can give appropriate copyright permission.
Notwithstanding any other provision of this License, for material you add to a covered work, you may (if authorized by the copyright holders of that material) supplement the terms of this License with terms:
a) Disclaiming warranty or limiting liability differently from the terms of sections 15 and 16 of this License; or
Requiring preservation of specified reasonable legal notices or author attributions in that material or in the Appropriate Legal Notices displayed by works containing it; or
c) Prohibiting misrepresentation of the origin of that material, or requiring that modified versions of such material be marked in reasonable ways as different from the original version; or
d) Limiting the use for publicity purposes of names of licensors or authors of the material; or
e) Declining to grant rights under trademark law for use of some trade names, trademarks, or service marks; or
f) Requiring indemnification of licensors and authors of that material by anyone who conveys the material (or modified versions of it) with contractual assumptions of liability to the recipient, for any liability that these contractual assumptions directly impose on those licensors and authors.
All other non-permissive additional terms are considered “further restrictions” within the meaning of section 10. If the Program as you received it, or any part of it, contains a notice stating that it is governed by this License along with a term that is a further restriction, you may remove that term. If a license document contains a further restriction but permits relicensing or conveying under this License, you may add to a covered work material governed by the terms of that license document, provided that the further restriction does not survive such relicensing or conveying.
If you add terms to a covered work in accord with this section, you must place, in the relevant source files, a statement of the additional terms that apply to those files, or a notice indicating where to find the applicable terms.
Additional terms, permissive or non-permissive, may be stated in the form of a separately written license, or stated as exceptions; the above requirements apply either way.
8. Termination.
You may not propagate or modify a covered work except as expressly provided under this License. Any attempt otherwise to propagate or modify it is void, and will automatically terminate your rights under this License (including any patent licenses granted under the third paragraph of section 11).
However, if you cease all violation of this License, then your license from a particular copyright holder is reinstated (a) provisionally, unless and until the copyright holder explicitly and finally terminates your license, and (permanently, if the copyright holder fails to notify you of the violation by some reasonable means prior to 60 days after the cessation.
Moreover, your license from a particular copyright holder is reinstated permanently if the copyright holder notifies you of the violation by some reasonable means, this is the first time you have received notice of violation of this License (for any work) from that copyright holder, and you cure the violation prior to 30 days after your receipt of the notice.
Termination of your rights under this section does not terminate the licenses of parties who have received copies or rights from you under this License. If your rights have been terminated and not permanently reinstated, you do not qualify to receive new licenses for the same material under section 10.
9. Acceptance Not Required for Having Copies.
You are not required to accept this License in order to receive or run a copy of the Program. Ancillary propagation of a covered work occurring solely as a consequence of using peer-to-peer transmission to receive a copy likewise does not require acceptance. However, nothing other than this License grants you permission to propagate or modify any covered work. These actions infringe copyright if you do not accept this License. Therefore, by modifying or propagating a covered work, you indicate your acceptance of this License to do so.
10. Automatic Licensing of Downstream Recipients.
Each time you convey a covered work, the recipient automatically receives a license from the original licensors, to run, modify and propagate that work, subject to this License. You are not responsible for enforcing compliance by third parties with this License.
An “entity transaction” is a transaction transferring control of an organization, or substantially all assets of one, or subdividing an organization, or merging organizations. If propagation of a covered work results from an entity transaction, each party to that transaction who receives a copy of the work also receives whatever licenses to the work the party's predecessor in interest had or could give under the previous paragraph, plus a right to possession of the Corresponding Source of the work from the predecessor in interest, if the predecessor has it or can get it with reasonable efforts.
You may not impose any further restrictions on the exercise of the rights granted or affirmed under this License. For example, you may not impose a license fee, royalty, or other charge for exercise of rights granted under this License, and you may not initiate litigation (including a cross-claim or counterclaim in a lawsuit) alleging that any patent claim is infringed by making, using, selling, offering for sale, or importing the Program or any portion of it.
11. Patents.
A “contributor” is a copyright holder who authorizes use under this License of the Program or a work on which the Program is based. The work thus licensed is called the contributor's “contributor version”.
A contributor's “essential patent claims” are all patent claims owned or controlled by the contributor, whether already acquired or hereafter acquired, that would be infringed by some manner, permitted by this License, of making, using, or selling its contributor version, but do not include claims that would be infringed only as a consequence of further modification of the contributor version. For purposes of this definition, “control” includes the right to grant patent sublicenses in a manner consistent with the requirements of this License.
Each contributor grants you a non-exclusive, worldwide, royalty-free patent license under the contributor's essential patent claims, to make, use, sell, offer for sale, import and otherwise run, modify and propagate the contents of its contributor version.
In the following three paragraphs, a “patent license” is any express agreement or commitment, however denominated, not to enforce a patent (such as an express permission to practice a patent or covenant not to sue for patent infringement). To “grant” such a patent license to a party means to make such an agreement or commitment not to enforce a patent against the party.
If you convey a covered work, knowingly relying on a patent license, and the Corresponding Source of the work is not available for anyone to copy, free of charge and under the terms of this License, through a publicly available network server or other readily accessible means, then you must either (1) cause the Corresponding Source to be so available, or (2) arrange to deprive yourself of the benefit of the patent license for this particular work, or (3) arrange, in a manner consistent with the requirements of this License, to extend the patent license to downstream recipients. “Knowingly relying” means you have actual knowledge that, but for the patent license, your conveying the covered work in a country, or your recipient's use of the covered work in a country, would infringe one or more identifiable patents in that country that you have reason to believe are valid.
If, pursuant to or in connection with a single transaction or arrangement, you convey, or propagate by procuring conveyance of, a covered work, and grant a patent license to some of the parties receiving the covered work authorizing them to use, propagate, modify or convey a specific copy of the covered work, then the patent license you grant is automatically extended to all recipients of the covered work and works based on it.
A patent license is “discriminatory” if it does not include within the scope of its coverage, prohibits the exercise of, or is conditioned on the non-exercise of one or more of the rights that are specifically granted under this License. You may not convey a covered work if you are a party to an arrangement with a third party that is in the business of distributing software, under which you make payment to the third party based on the extent of your activity of conveying the work, and under which the third party grants, to any of the parties who would receive the covered work from you, a discriminatory patent license (a) in connection with copies of the covered work conveyed by you (or copies made from those copies), or (primarily for and in connection with specific products or compilations that contain the covered work, unless you entered into that arrangement, or that patent license was granted, prior to 28 March 2007.
Nothing in this License shall be construed as excluding or limiting any implied license or other defenses to infringement that may otherwise be available to you under applicable patent law.
12. No Surrender of Others' Freedom.
If conditions are imposed on you (whether by court order, agreement or otherwise) that contradict the conditions of this License, they do not excuse you from the conditions of this License. If you cannot convey a covered work so as to satisfy simultaneously your obligations under this License and any other pertinent obligations, then as a consequence you may not convey it at all. For example, if you agree to terms that obligate you to collect a royalty for further conveying from those to whom you convey the Program, the only way you could satisfy both those terms and this License would be to refrain entirely from conveying the Program.
13. Use with the GNU Affero General Public License.
Notwithstanding any other provision of this License, you have permission to link or combine any covered work with a work licensed under version 3 of the GNU Affero General Public License into a single combined work, and to convey the resulting work. The terms of this License will continue to apply to the part which is the covered work, but the special requirements of the GNU Affero General Public License, section 13, concerning interaction through a network will apply to the combination as such.
14. Revised Versions of this License.
The Free Software Foundation may publish revised and/or new versions of the GNU General Public License from time to time. Such new versions will be similar in spirit to the present version, but may differ in detail to address new problems or concerns.
Each version is given a distinguishing version number. If the Program specifies that a certain numbered version of the GNU General Public License “or any later version” applies to it, you have the option of following the terms and conditions either of that numbered version or of any later version published by the Free Software Foundation. If the Program does not specify a version number of the GNU General Public License, you may choose any version ever published by the Free Software Foundation.
If the Program specifies that a proxy can decide which future versions of the GNU General Public License can be used, that proxy's public statement of acceptance of a version permanently authorizes you to choose that version for the Program.
Later license versions may give you additional or different permissions. However, no additional obligations are imposed on any author or copyright holder as a result of your choosing to follow a later version.
15. Disclaimer of Warranty.
THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM “AS IS” WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION.
16. Limitation of Liability.
IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR CONVEYS THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.
17. Interpretation of Sections 15 and 16.
If the disclaimer of warranty and limitation of liability provided above cannot be given local legal effect according to their terms, reviewing courts shall apply local law that most closely approximates an absolute waiver of all civil liability in connection with the Program, unless a warranty or assumption of liability accompanies a copy of the Program in return for a fee.
END OF TERMS AND CONDITIONS
A Little Help With Arrays
If you're needing help understanding how to set up your structure array, here's an explanation of how arrays work that I've been told was helpful.
You all know what an array is, but did you know that each value in an array can store another array?
Make a single array that stores ints, our y values:
int[] y = {5, 10, 2, 39};
It has 4 values stored at locations y[0],y[1], etc.
But we can make y[0] not store a value, but store an array of integers instead:
int[][] y = { { 5 }, {10}, {2}, {39} };
Note we have the same values, but now they are stored at:
y[0][0] = 5, y[1][0] = 10, y[2][0] = 2, etc.
Adding more values:
int[][] y = { { 5,10,2,39 }, {7,3,16 } };
Now we've made it so y[0] stores the array [0] = 5, [1] = 10, etc. and
y[1] stores the array [0] = 7, [1] = 3, etc.
Note that arrays defined this way (i.e. with { } ) are static and can store different numbers of variables in each array - they don't have to have the same length.
Thinking in terms of structures, then, we need an array to store all of our y values, and for each y value we must store an array of x values, and for each x value we must store an array of z values, giving us a 3D matrix:
int[][][] 3d = { {
{ 0,1,2 }, { 0,1,2 },{ 0,1,2 } }, // y = 0, 3 x values that each store z = 0, 1, 2
{ 0,1,2 }, { 0,1,2 },{ 0,1,2 } }, // y = 1, 3 x values that each store z = 0, 1, 2
{ 0,1,2 }, { 0,1,2 },{ 0,1,2 } } }; // y = 2, 3 x values that each store z = 0, 1, 2
However, we need to store more than a single int at our location x,y,z, because we need block ID, metadata and possibly a flag, so each of our z values must also store an array.
Thus the 4 dimensional array used for storing structures.
Credit
Microjunk, for coming up with the idea for this mod, helping me test it, providing great feedback and for using this tool in his mod. Be sure you check out his Builder Mod!
MineMaarten, for his open source MineChess mod which helped me create the preview mode.
Mods Using this Tool
Anyway, I hope this proves a useful tool for you structure generators out there. Please post pics of your structures (rotated!) below
Here's a handy tool if you're using schematics: https://github.com/t...rd/LibSchematic
-
1
coolAlias posted a message on [forge] send player to spawn on right click [solved]Posted in: Modification DevelopmentQuote from microjunk
Id imagine, is it working in an entity or an item for you? The interact method we talked about the entityplayer...I should be getting the player and not the Santa mob right? Should I add instanceof EntityPlayer to that? Could you possibly show me how you were using it? may help me a bit...
It's in an Item class in onPlayerStoppedUsing method:
public void onPlayerStoppedUsing(ItemStack scroll, World world, EntityPlayer player, int par4) { // get spawn point method: ChunkCoordinates cc = world.getSpawnPoint(); player.setPositionAndUpdate(cc.posX, cc.posY + 1, cc.posZ); // bed location method ChunkCoordinates cc = player.getBedLocation(player.dimension); if (cc != null) { player.setPositionAndUpdate(cc.posX, cc.posY, cc.posZ); } }
Both of those work perfectly fine for me. -
3
jcm2606 posted a message on Mods for XboxAs people have pointed out, it is possible to make mods for the X360 version of Minecraft, but the steps the end user needs to make to install the mod, hell even the API alone, makes it not worth it.Posted in: Modification Development
Also, as far as I know, the X360 version of Minecraft is coded in a completely different way to the PC version, as X360's aren't exactly as flexible as PCs, among other reasons. If Forge were to come out on the X360, Lex and CPW and all others who are associated with the development of Forge officially would have to give up half of their time with PC Forge, to the X360 Forge. For those who don't know, Forge alone takes up a lot of the time all the devs have in their lives. Not only do they have to keep Forge updated and running with new features, they also need to keep the forum up and answer the plethora of questions people have on the Forge forums, and they also need to take the time to make sure the trolls and flamers that come with internet popularity are in line (ANYTHING, and I mean ANYTHING you release on the internet, will have trolls and flamers too). -
1
jcm2606 posted a message on generated structure block rotationPosted in: Modification DevelopmentQuote from Casual_Dutchman
Metadata is for specific blocks like a log, planks, wool or even slabs and stairs.
Metadata allows 3, 4 or 5 blocks to be stored on 1 id.
wool has a metadata vlaue of 15. every colored wool has its own metadata.
Can someone else please help me?
I know what metadata is. Certain blocks store rotations in metadata for rendering. Like X block has a metadata range of 0-4, each representing what way the front face of the block is pointing at. In the rotation code, the code would check what metadata the block is and rotate it accordingly. - To post a comment, please login.
1
After looking around a bit, I still don't seen any mods involving the addition of new villages. I was working on one that did add several villages to the game, however many life altering events later and I finally have got back to finishing the mod, though its not to share, I am sorry, I will share the code that results in getting more than one village to generate. One reason I wont share the mod is I base edited the code which is frowned upon and its for personal reasons I even finished. I have lost all original portions of the code from years ago and had to start from scratch and it was for my son, whom is no longer with me.
There was another mod at the time called Diversity, by Budd, and if you can find his code on github, it is overly complicated to do what I am about to show you. It is not my code so I can not show you the link. Also it requires more than one class to simply load several villages. In forge, during minecraft 1.6.4 and below, not sure about recent You can only replace the mapgen files, not really add to them if adding the same thing. So, I was looking for the simple solution that would result in doing just this. And it is as follows, minus the loading of the new MapGenVillage, thats up to you how you want to do this. Though once you add the code to load replace the MapGenVillage, this goes in the new class
Create Your New MapGenVillage and copy the original changing the following bits
[/code]
You'll notice thats comes just before the boolean method isSizeable.....
change that to the start method from MapGenScattered Features and remove the code bits for generating the features to look like this
Now, where those bits were, you will replace it with this...
If you make those changes, and make sure the spawn array list at the top contains each biome represented at the start method. Using this will give you four villages total, and using the variance code for desert village you can change the same villages many times. However this will give you four distinct villages if you change the shape and style of each village structure. you can also add more than four, this just gets you started. Dont forget to resgister all the village pieces for each piece class. have fun Sorry for the messy code blocks, it wasn't like that when I was making the tread
43
Due to the aggravation I have been experiencing editing this page, I have moved the mod to this new page located here at Google Sites. I have fixed the color.




Link to the mod page....
Downloads have been moved to the new page as well, please look for them there...Pic of some of the new structures in the new villages....
Progress on the new update is coming nicely....lots of new features and changes coming...Sorry for the crappy
pics....the new jungle village
Xmas Village
Swamp village
Just need to make the textures for the villagers and set the trade tables if time allows...Santa at the very least.
In the next update I have planned to start trying to code the NPC new pieces into components and generate with the villages, if this works out I will be creating a new map gen for the other villages and naturally generate them as well. Also I have a new AI set coming for all custom villagers as I will be moving them to a separate villager class to handle them differently...should be nice.
temporary link for the new update
I no longer have the time to develop this mod, so if you would like a chance to do so, please send me a PM for details as to how you may be able to help.....
1
1
As soon as I have the chance I will post the code for all my projects on github and provide a link so anyone who wishes to do so can continue my work. This is my free for all permission to have and use my code as you see fit.
1
1
8
Lets get started....
Container....
In the container we have this inside the constructor and its where we will make the first changes
As stated in the code the crafting matrix is made by ROWS and COLUMNS. so if you simply want to redesign the table keep in mind you can move the matrix just the same as any slot.
In the next method you will find this...
This is your output slot. It has coordinates that we can use to move the slot anywhere we want...in this example it is (0, 124, 35).
Next is the matrix....
Remember, it is rows and columns. The matrix is also using coordinates. And as I dont really know why, (i1 + l * 2) the 2 in this instance seems to work, and 4 seems to crash it. If anyone knows why please explain.
The next 2 are for inventory and player hotbar.
These are there for your inventories...
The next important method is the onContainerClosed...
The 8 in the loop is a multiple of the rows and columns...so if it were 3x5, the 8 would be a 15...or say 5x5, the 8 would be 25.
Next is this method here....the canInteractWith.
If you dont change this to your block, in this case (ContainerTutorial.ctutorial.blockID), it will not allow you to open and use you GUI...YOU MUST CHANGE THIS TO YOUR BLOCK
Now since you changed things in the container class a bit, you must also make changes elsewhere...
If you said recipe classes you're right...
Recipes
Recipe Sorter
Here you will need to change all the Shaped and Shapeless references, like the following example I use ShapedCTRecipes and ShapelessCTRecipes
In your Shaped recipe class you will want to change the methods match and checkMatch to reflect your rows and columns like so...
In your Shapeless class you will also want to reflect the change in the method matches like the following...
You will also need to make a few changes to your crafting manager as well.....
In the method CraftingManager(), you will want to replace that with what ever you named your manager..., this is mine..
So this recipe wont work now will it?...No because it has variables for 3 slots. We have 4 rows of 2 columns. Recipes are read from left to right. The first row in the grid will have 2 columns across, or 2 slots....and then repeat this 4 times...so or recipes should look like this...
Make them however you want, but keep in mind, its from left to right, rows and columns.....so in this case no more than 2 items 4 times.
You must also make sure that all recipes instances ShapedRecipes and ShapelessRecipes get changed to your custom classes.
Hope this helps you understand a bit more on how this works for changing the way the grid is shaped. You can also add extra or custom slots by adding custom slot classes. Some changes may even require custom inventory classes. I do not now how to make these, please dont ask me to explain them....
1
1
if you are asking this, than you have no idea what metadata is and how all it is used....You can set the facing of those blocks fine by using the metadata stored in the block. Also how did you create your structure? did you build it then use mcedit to make the schematic and convert the schematic? if not, you may want to do this next time as it will store the facing direction automatically and all you need to is generate the structure.....also yes the easy way is nice and it works....are these random generated structures, or instant structures. with the method I told you about it uses arrays to make the structure instead of world.setBlock allowing you to do more than just generate the structure....should look into it.
Plus one for that....
1