Saturday, March 1, 2014

EbXL 3.15.6 Less Crashing - (Small 1.7 Update)

Well the time has come to get a few more crashes out of the way. We had a major server crash that some how managed to slip through testing on our end, along with a client side crash with tukMC is also installed and you looked at one of our quarter, elbow or mini logs due to tukMC trying to render an a block with invalid metadata.

We also started updating some of the block "names" that minecraft/forge stores in maps in preparation for upgrading to 1.7. This will cause MC to complain that blocks have changed but is just MC/forge letting you know that we updated stuff on our end so that once the fully get rid of external id's you won't have to type something like "extrabiomes.block.BlockCustomFlower:extrabiomes.block.BlockCustomFlower" and instead be able to do something more along the lines of "extrabiomesxl:flower1", much easier on the keyboard ehh?

Oh and we back-ported the new localization and smart tool tip code so that flowers and such can now have their tool tips localized. If anyone has any suggestions for flavor text for any of the flowers that don't have descriptions feel free to chime on in, although Annysia would probably prefer that you do it over on the official forums thread where you gets notifications about such any posts.

Download EbXL 3.15.6

Change Log

Bug fixes:

  • Fixed crash with tukMC and any other mod that creates fake items for render resulting in invalid metadata in the item form for Mini, Quarter and Elbow logs.
  • Fix server crash from missed placed SideOnly in BlockCustomFlower.

Changes:

  • Tool tips for flowers are now localized, and will automatically wrap text so that it does not need to manually be formatted as such in the localization.
  • Flower names localization has changed for easier translation in the future. No more extrabiomes.flower.0, as the localization string now says the flower name. This breaks most existing translation, but will be better in the long run.
  • Some blocks had their internal "keys" changed in preparation for updating to 1.7, this will result in MC saying that some blocks have changed but it is not an issue as it will not break anything in 1.6.

1.7 Update Blurb

Not much new news about 1.7 at the moment as I personally have been catching up on sleep and dealing with my full time job, and other outside of modding stuff along with getting 3.15.6 out the door.

That said I do have stairs completed so there is that, but they may end up getting a little more work as they way that vanilla handles stairs is a little restrictive for what I would like to do with the block config file, but that will have to wait for the moment.



Wednesday, February 26, 2014

EbXL 3.15.5 Log Spam be Gone! (1.7 update - Tooltip Localization)

Another emergency fix for the 3.15.x branch to deal with log spam slowing down world generation.

Download EbXL 3.15.5

Bug fix:
  • Commented out debug code from flower generation that was causing lag due to log spam.
I've been working on finally getting the EbXL 3.15 branch ready to be re-synced with github again so that we can finally have other people able to contribute to out code again, along with doing some minor tasks on the build for 1.7, mainly focusing on code that we can bring back to MC 1.6 stuff such as localization in tool tips. It is almost ready to be re-synced again and we just need to make sure that everything matches on up and then we will be good to go and other's can once more push bug fixes if they are needed.

So in starting in EbXL 3.15.x we started adding tool tip flavor text to things like flowers and other such things. There were two minor issues with it, firstly for longer flavor text/descriptions each line of the text had to be manually separated, and hard coded into the mod itself. With the work that we have been doing in 1.7 that will no longer be an issue, as we will be able to simple enough back port the update to allow for wrapping formatted text in tool tips.

Sunday, February 23, 2014

EbXL 3.15.4 for MC 1.6.4 & 1.7 Update Progress

Another critical patch for if you have had issues upgrading from 3.14.x and early versions.

Download 3.15.4 Here

Change Log
Bug Fixes:

  • Old block/item ids are kept when upgrading from versions prior to 3.15.
  • Blocks/items can once more be disabled by setting them to 0 in the config. Some blocks that are used in recipes such as redrock can not be disabled without all the things that are made from them being disabled as well.
  • The redrock in the Forestry carpenter recipe has be fixed so that it does not use a random fluid instead of water.

Well it took longer that I had hoped, but we have made some great progress. All of our terrain blocks with the exception of quicksand are in game. In relation to terrain blocks, I finally took a look over at the the terrain generation code, namely the chunk constructor code/biome filler/topblock code, and it looks like we will be able to use any type of block, even if it has metaData in terrain generation. We haven't had a chance to test this out, but what it means if I read the code correctly is that we can use any type of block as the top of the biome, and what's more we can pack up to 32 block types into the existing block id's that we already use.


Thursday, February 20, 2014

Just a quick Update

I don't have much to report today, but I have leaves about 90% coded back into 1.7, with the main things that are not complete as of yet being the dropping of saplings and other items as saplings are not in the game.


However things are far enough along that I can get a build on out for other team members to start crafting trees that I can then turn into the basis for code later on.

Tuesday, February 18, 2014

1.7 Update - Existing Logs Complete

Well all the logs that we had have in ExtrabiomesXL 3.15.3 for Minecraft 1.6.4 have been re-implemented in the new system that we are designing for Minecraft 1.7.x.


The last of the logs to complete is our Mini Logs which received a bit of an upgrade, they now support the ability to have multiple types of log in one block and can come in varying sizes, as shown in the picture above. The shot is a dev test so the smaller log is just reusing the Sakura log's textures, but it shows the basic concept and power of the new design. We also had to deal with a rendering issue with the log in item form that didn't make itself present until 1.7. It is what I get for hacking together the rendering code for it before I fully took the time to understand it. The logs could still use a bit more work on their normal rendering, as since they use custom rendering code for their "nubs" to allow them to attach to things like other branches or leaves, they don't do smooth lighting properly. This will probably get pushed to the side for the moment as getting the rest of the mod updated is a little more important, and once I finish the update if some wants to contribute and push a change to fix that issue on github they would be more than welcome to do such.


As part of the update I discovered the Block.isWood method, so the mini logs now are able to connect to any block that reports that it is wood, much better over how I was try to do it before, and it has the benefit of supporting any type log that reports that it is wood. I had originally tried using the block material, but planks, wooden stairs and wooden half slabs all use the the wood material so that was out since initially I wrote the code to check to see if the adjacent block used the same block id. If you look closely you can see where the mini log is connecting to the leaf block an you can see the nub stick out to connect there.


I also worked on the fixing up the whole multi-block system a bit so that if you some how had an invalid sub-block in your inventory or in the world it no longer crashed the game, but instead indicated that the block was invalid. The texture could probably still use a little more work for invalid blocks and items and I need to see if I can get it to render as 2D although that does not look to be all that promising with out some base edits that we will probably not do.

I also started in on the leaf blocks, they are going to take a little bit of work as they are getting a complete overhaul.  I am manually de-obfuscating all the code that I can so that we can actually tell what is going on internally (leafRange and chunkRange are much easier to understand than b0 and i1), and so that each leaf block does not end up eating 32768 integers like vanilla leaf blocks do and we do in EbXL 3.15.3 and below.

I'll try to have another update out tomorrow and I hope to have enough time to have the leaves up and running by then so that I can move on to the flowers, and Annysia, Zenth can play around with the blocks and get to creating template trees that myself and the other coders can create tree generation algorithms that generate similar results. It is one thing to say I want a Sugar maple tree that is approx 20 meters tall and a whole other thing to create code that generates the parts of said tree to give it a somewhat realistic feel.

Allaryin has been busy working on extracting all references to Project Dandelion, our top secret project that we want to really wow people with, from our private dev branch.  This way we can re-sync the public git, to allow others to contribute once again.

Monday, February 17, 2014

3.15.3 Thaumcraft 4 Hot Fix - More 1.7 Progress

Just to let every one know Thaumcraft updated to 4.1 today, and we had been including the API in our jar when we did not need to do.  When Thaumcraft 4.1 updated it's API, which we were accidentally overwriting due to not forcefully loading after Thaumcraft, as it would have lead to an infinite loop with Forestry. Anyways, just re-download 3.15.3 and you will be good to go again. (I really need to talk with Scott to so that we can update our Thaumcraft calls so we don't need to include the classes in our work space like he did with the old IC2 API.)

Download EbXL 3.15.3

As for the 1.7 update, it is coming along and with the new block loading code adding the Quarter Logs (which are being renamed to Corner Logs in order to support larger trees in the future) was rather trivial.   Even with having to rename the textures to match the new naming convention, converting the last four logs only took about 2 minutes to get them added and in the game. One thing that I like about the new block id system in 1.7, is that blocks will appear in the order that they are created now since MC automatically assigns their internal numerical id's, meaning that we can control the order that blocks are sorted in our creative tabs with nothing more than changing the order of the blocks in the config file. Talk about convenience.

On a 1.6.4 to 1.7.x transition note one of the upcoming 1.6.4 releases will be generating a ton of ID mismatch messages, as the way that we currently register blocks/items is a little troublesome and is not user friendly. As long as you do NOT delete your config file this will not break you world, it should just make updating to 1.7.x possible without breaking everything.  However, the 1.7 version will probably have some new biomes, so you are going to get issues with chunk borders, if added to an existing world, so that should not be any more of an issue than it would be otherwise.

I still would recommend creating a new world in 1.7 though as it chunk borders are ugly, and time willing we may have an enhanced world type in 1.7. (Which would most likely make it EbXL 4, but that is not confirmed at the moment.)

3.15.3 Server Side Bug Fixes (Oh and 1.7 Update Progress)

Well it turns out there were a couple of bugs relating to how EbXL interacts with other mods and not doing things properly that led to us causing crashes on servers.
Download EbXL 3.15.3

Change Log:

Bug fixes:
  • Eelgrass no longer causes crashes on servers if a mod asks for the unlocalized name on the server.
  • Our custom dyes no longer cause a crash if another mod asks for the unlocalized name on the server.
  • Deleted Thaumcraft API from the jar to prevent it from breaking with Thaumcraft 4.1. (It also makes for a smaller download too.)
Changes:
  • Eelgrass can now grow on grass block under water so as to curtail it breaking if a dirt block changes due to grass spread.
Well, work on the 1.7 update has finally started, and at the moment the foundations of the mod are undergoing a rewrite to try and make things easier to maintain in the future. As of right now, we are not totally sure if the 1.7 update will be version 3.17 or the final dawning of EbXL 4, it really all depends on how much it breaks.