Jump to content

LexManos

Forge Code God
  • Posts

    9273
  • Joined

  • Last visited

  • Days Won

    68

Everything posted by LexManos

  1. 1.8 is nowhere NEAR the latest version And you've failed to do what the big red text at the top of every page tells you to do and post your log. So, Locking this with the only advise you'll get: Update to 1.10.2
  2. Proptip when doing language files, spaces in the key is not advised, it can mess with a lot of parsers. And just doesn't fit the standard programming practices. CamelCase: someNameHere Or Underscores: some_name_here
  3. update to 1.10.2
  4. this is the exact reason it was made, to allow you to serialize ANYTHING with a single interface instead of having to specialcase every type of item.
  5. Speed, and compatibility. Beyond that you should update to be up to date. Bitching about old versions is not going to be supported here.
  6. Actually for the most part, they are using it correctly they just dont have the replcements in place for some of them yet. You need to look for the alternatives, when it comes to Block it's MOSTLY IBlockState stuff.
  7. Use the installer, and post logs. 1) There is no reason NOT to use the installer if your server designed in fucked up then fix the server. 2) There is ALWAYS a log, SOMETHING ALWAYS happens when you try running the server. But again, as stated we do not support 1.7.10. If you want support update your shit.
  8. 1.9.4, 1.10, and 1.10.2 all are 99.99% compatible with eachother so we have decided to force load the ones that state they are specfically for that version on the others. This is the power of reobfusicating to SRG names. I work hard to make this work. If you MUST keep your version to a specific version, then you can set your compatiblity to something that ISNT the default [MCVER] So, [MCVER,MCVER] would work to hardcode it to one version.
  9. First off, writing a Clojure adapter is a fun academic experiment but its not worth the effort to make a real mod in. Trying to do anything in the real world with it is inadvisable. And calling a system retarded because you have no idea what the hell you're doing is NOT a way to make friends. The EventBus in Forge is HIGHLY optimized in a way that lets us run whatever the hell we want without any performance impact of the rest of the system. At the end of the day, the Event bus is just an array of IEventListeners. Whatever the implementation of that IEventListener is we dont give a shit. If you want to do your static method crap you could easily just write a IEventListener that calls a static method. This shouldnt have to be explained as its obvious if you take 10 seconds to look at the system. But ya, have fun with your Clojure toy, i'd advise you drop it, or put in a modicum of effort before calling shit retarded. On top of that you're developing or 1.8.9, we're on 1.10, get with the times. That being said, you do bring up ONE good point, There is no technical reason we don't allow static methods as event handlers. It's mainly a legacy from when we originally moved from Guava's EventBus {Which doesnt support it} to our own. I've got a proof of concept edit already, only like 4 lines of code changed. I'll push it up if cpw cares enough about it.
  10. So you are to lazy/stupid to put in the effort to understand a simple thing and so are going to argue about it. Ya no...
  11. Wow this is fucking retarded, We have several example mods in Forge. We have capabilities implemented in all the vanilla objects. The code is straight forward. The ENTIRE FREAKING POINT of this is that TEs/Items/Entites DO NOT HAVE TO IMPLEMENT THE INTERFACE ON ITSELF. Which is the entire point because it prevents having hard references to the classes. Now lets make this clear for you. Your example: public class AGameObject extends [TileEntity or Entity, or whatever] implements IAccountableInventory { IAccountableInventory interntalInvetory = new InventoryMapped() @Override public ItemStack implementationOfInterfaceMethod() { return interntalInvetory.implementationOfInterfaceMethod() } } Want to know how to do this? public class AGameObject implements ICapabilityProvider { IAccountableInventory interntalInvetory; //Doing this in the static constructor is BAD because it makes a HARD reference to the class which will crash if you dont have the dependancy = new InventoryMapped() getCapability(cap){ if (cap == YOUR_SUPER_AWESOME_CAP_OBJECT) return internalInventory; } } Its fairly straight forward, the 'documented' example of it is here: https://github.com/MinecraftForge/MinecraftForge/blob/1.10.x/src/test/java/net/minecraftforge/test/TestCapabilityMod.java Here is how chests work: https://github.com/MinecraftForge/MinecraftForge/blob/1.10.x/patches/minecraft/net/minecraft/tileentity/TileEntityChest.java.patch Furnaces, with multiple sides: https://github.com/MinecraftForge/MinecraftForge/blob/1.10.x/patches/minecraft/net/minecraft/tileentity/TileEntityFurnace.java.patch#L83 See how its a simple implementation of getCapability and returns an instance of the interface that capability specifies. How are you confused about this?
  12. You dont implement any of those on the Item itself.
  13. This topic has been moved to Modder Support. [iurl]http://www.minecraftforge.net/forum/index.php?topic=40490.0[/iurl]
  14. However you're registering your object is wrong, its getting a duplicate name instead of using your items registry name.
  15. Logs, Code, etc...
  16. Forge Version: 1.10.2-12.18.1.2011 Minecraft Version: 1.10.2 Downloads: Changelog (Direct) Windows Installer (AdLink) (Direct) Other Installer (AdLink) (Direct) MDK (AdLink) (Direct) Universal (AdLink) (Direct) 1.10.2 is out, stable, and ready to go. It is 99.9999% binary compatible with 1.9.4 so there is NO excuse NOT to update. Coremods may break or do weird things but modders shouldnt be making coremods because thats BAD! So lets get to it! Minecraft Forge 12.18.1 Changelog: ============================================================================ New: Make 1.9.4 mods load! Thanks to compiling for SRG names this means most 1.9.4 mods will work on 1.10/.2!! New Simple implementation of a Open/Close container event Added Big warning for recipe types found without being registered, it turns out this is pretty severe, modders need to fix it. Added loading of mod lists from jsons in the mods folder. New throwable impact event New event that allows to modify the looting level based on damage source Bug Fix: Fixed keys with KeyModifier failing to load Fixed item pickup dupe bugs. Fixed issue with mipmaps when users use a debug flag. Fixed Missing blocks/items/registries prompt often getting stuck. Fixed comparison stability of the Recipe Sorter with unknown recipes Fixed FluidContainerRegistry handling potions as water bottles Fixed milk bucket is fillable with water or lava when milk is unregistered Fixed legacy handling for ItemBucket subclasses and non-universal buckets Fixed mob-spawners crashing for non-living entities Fixed villages generating to high when using a cusom sea level. Restore buggy behavior of vanilla BlockPistonMoving and ignore drop chance Fixed FPS graph and new debug lines not being rendered in Debug screen. Fixed hopper extract behavior being broken on edge cases due to IItemHandler capability. Relicensing: Forge has now officually change it's license from the homebew 'Minecraft Forge License' that we have used into the past to the industry standard LGPL v2.1. You can see a full copy of the license here: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt FML has always been licensed as LGPL, this just extends it to cover the rest of Forge. We have also enacted a CLA for anyone who submits code to Forge that better protects us when we accept the code. The basic TLDR of the new license is that you guys can do exactly the same things you were doing before. Use Forge however you wish, just don't claim as your own, give credit where credit is due. Mod List JSON: Forge, for a long time has had support for providing a JSON file that tells it what mods to load. The intention is to have mods installed in one central place and not have to have them copied eveywhere. Forge has expanded this to automatically read the 'mod_list.json' file in the mods folder, and the mods/MCVERSION folder. You can read the specs on the JSON format here: https://github.com/MinecraftForge/FML/wiki/New-JSON-Modlist-format One modification is that if the reporitoryRoot starts with 'absolute:' then the path is NOT relative to the MC directory. This allows you to have on central repo for your entire system! People who write mod pack installers should use this system to save MASSIVE amounts of space on the users computer and to make the mods folder far more orginized!
  17. Forge Version: 1.9.4-12.17.0.1987 Minecraft Version: 1.9.4 Downloads: Changelog (Direct) Windows Installer (AdLink) (Direct) Other Installer (AdLink) (Direct) MDK (AdLink) (Direct) Universal (AdLink) (Direct) 1.9.4 has been out for quite some time but it seems that my Recomended Build post disspaeared. So before I post the 1.10.2 RB post, heres 1.9.4. Moving forward, 1.9.4 is in bugfix mode. 1.10.2 is 99.999% binary compatible with 1.9.4 mods so there is quite LITERALLY no reason to not update you mod packs, seriously guys do it. Minecraft Forge 12.17.0 Changelog: ============================================================================ New: New LootTable interaction system and event. New ScreenShotEvent for capturing/manipulating screenshots. Extended Animation State Machine format to allow multiple transitions from one state. Add modder facing API for Villager Career level trades. Expanded max Enchantments to 32,000 New ItemAxe constructor to bypass vanilla array issue. New hook in Tile Entity syncing packets. We will now pre-load subclasses of ICrashReportDetail to help prevent crashes when displaying crashes! Now Fire LivingSpawnEvents for MobSpawners. Added automatic stats registractions for modded items. Initial support for model visibility system. Added warning and premissions check to load a world with unknown registries. Expanded custom villagers to Zombies and world gen. Moved IFluidHandler to capabilities, old system is deprecated and will be removed in next deprecation sweep {next MC version most likely} Add methods to Fluid to allow custom vaporization overrides Made dispensers with buckets work with modded fluids Improve the "missing mods" on-screen error message Bug Fix: Fixed url detection in chat messages. Stops false positives such as `um.....no` Fixed potential NPE with in-hand item rendering. Fixed areas where dimension types are used as dimension IDs. Fixed the rand given to PopulateChunkEvent Fixed map extension recipie. Fixed issue in ChunkIO that would potentially cause NPEs on chunks. Fixed joint hierarchy not being used fully in the animation system. Fixed up release jsons to clean up extraneous netty references Fixed Bucket rendering and add sounds for modded fluids Fixed capabilities not being taken into account when comparing ItemStack NBT's Fixed screenshot link paths on Windows Tipped arrows are now not affected by infinite enchantment but are still effected by creative mode. {Vanilla behavior} Fixed Container.compouteStackSize not respecting stack version of maxStackSize. Fixed missing playerDestroyItem event's in some cases where we were not. Fixed paramters for addArmorMaterial, addOption and addGameType. Fixed wrong position being sent to isSideSolid in BlockRailBase#canPlaceBlockAt Fixed @Optional not stripping from class signatures. Fixed installer downloading vanilla jar when not needed. And filter some more known libraries. Fixed PopulateChunkEvent Pre and Post not being fired in ChunkProviderFlat. Fixed rotation and animations not being set on items with custom armor models. Fixed potential dupe issues related to modded items. Fixed Enchantment Table's harvest level. Fixed EntityRegistry.addSpawn adding duplicate spawn entries. Fixed setTileEntity causing the world to remove the new and old tile entities. Fixed NBTTagString.toString not properly escaping \'s. Fixed Thorns enchantment bypassing ISpecialArmor.damageArmor function. Fixed tooltip for survival tab in the creative menu not drawing on any but the first page. Fixed FluidUtil.tryEmptyFluidContainerItem not checking if the tank can accept fluids first. Fixed potential issue with Chunk.getLightOpacity being called before the chunk is added to the world map. Fixed TileEntityBeacon not using position-aware getLightOpacity. Fixed village wells not having their biomes set. Fixed static inializers being run on @ObjectHolder classes in incorrect order. Fixed item transforms on entities. Fixed BlockFluidBase having collision. Fixed position sent to sanSustainPlant from cactus. Fixed client side ticking TileEntites after they are unloaded. Fixed edge cases where custom professiosn wernt being used correctly. Fixed POTENTIAL issue where mods would query world infrom from TEs before they are set Fixed shift+double clicking items into Containers that use SlotItemHandler. Fixed PlayerInteractEvent issues. Fixed ChunkWatchEvent.Watch not firing. Fixed issue with some mods and the Splash Screen. Fixed model part hiding always applying to some models when transformations are specified in the blockstate json. Fixed custom fluids having odd transperency. Fixed arrows not showing in non default AchievementPages Fixed encoding issue with update jsons, now uses UTF8 for custom characters. Fixed Fernflower decompile issue in AnvilChunkLoader.saveExtraData() Fixed Capability data not being preserved by fluid handler interactions Fixed AnimationItemOverrideList not falling back to super Fixed brewing stand returning incorrect solts for side inventories. Fixed broken EntityItem merging for Items with capabilities Loot Tables: 1.9's major feature from Mojang was the switch to using Loot Tables, which is a json objust describing what should be generated where for things like mineshaft chests/entities. Forge has had a hook into this system for a long time and tried to make it sane. Mojang has finally come through and cleaned it up on their end to make it more flexible for everyone. Sadly this means everyone's most hated friend Json is back. Just deal with it, it's not that bad. A short rundown of the API and what you can do with it is here:
  18. What are you talking about? You're gunna have to be more detailed.
  19. Delete the file it is erroring on somehow it got corrupted massivly.
  20. So, what you mean to say is: Fixed that for you. Either way, the vanilla ISided stuff is bad because it lets someone reach into your pants and rifle through your pockets and you don't even know there is anyone else on earth. The new system {IItemHandler} is cleaned up and makes sure you KNOW when your pockets are being stolen from. As for the Capability system itself how the HELL is it bad? Its LITERALLY two functions: 'You has dis?' 'Gimmie dis!!' The code literally changes from: if (te instanceof ISidedHandler) ISidedHandler inv = (ISidedHandler)te; To: if (te.hasCapability(ITEM_HANDLER, null)) IItemHandler inv = te.getCapability(ITEM_HANDLER, null); OOOOHHHH so complicated! Seriously, don't bitch about something just because you don't understand it.
  21. User was banned for using a cracked launcher.
  22. Kill Progressive Authomation and get us a new log.
×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use.