Mystcraft Forums and Status Update

This post was supposed to go up days ago…

Hello!
I wanted to announce that the Mystcraft forums are up and running. Veovis and Dinnerdog put a lot of time and effort into this, so a big thanks to them! 🙂
The forums can be accessed here.

I also wanted to give a general update on the status of Mystcraft for 1.3.
I’ve already had a working build for 1.3.2/Forge217 for a while now, and just now I updated to 1.3.2/Forge233. We’re working on moving the base edits Mystcraft needs into Forge so that it will be installable like every other mod. 🙂  That probably won’t happen for the next release, but we are working on it! 🙂

Here’s a changelog for everything I’ve been working on since the last release:

  • Moved to Forge Edition only (note that it is still a jar mod)
  • Eliminates usage of lang file (uses internal functions instead)
  • Fixes EXP syncing on link
  • Fixes platform generation
  • Fixes bedrock generation on Standard Terrain
  • Fixes (visual) loss of potion effects on link
  • Modifies falling block rendering
  • Improves communication of falling block info
  • Removes ‘falling block’ packet
  • Breaks mod generation in ages (solution pending)
  • Cleans up and improves tpx command
  • Adds flags to the config to enable/disable mystcraft item crafting
  • Tweaks fallback system in DimensionManager
  • Adds some missing block names
  • Fixes placing receptacles
  • Force closes the book gui on held items if the book is no longer in your inventory
  • Moves biome initialization later (trying to catch other mod registered biomes)
  • Eliminates use of ‘packets’ (uses Forge network channel)
  • Fixes issue with opening book gui when placing book in receptacle
  • Moves linking and age books back to transport tab
  • Updates to Forge233
  • Changes from dimension fallback system to dim registration system
  • TPX no longer auto-creates dims
  • Adds myst-create command for creating mystcraft ages by commandline (worlds created in this manner do not have instability)
  • Fixes sending of age data on player login
  • Deleting agedatas no longer reuses slot
  • Adds instabilityEnabled flag to agedata
  • Fixes a bug with the nextFreeDimId counter added to DimensionManager
  • [hidden]
  • Switches logging to use FML Logging
  • Fixes a bug with unloading worlds leaving incorrect world array state
  • [hidden]
  • Adds dummy SkyProvider (standard rendering in place)

Mystcraft Resumes, Others Continue

I have been working on spaceman and the designs for most of it are done. Lately I’ve been busy with other things so progress has been slower on that front.

I ran a D&D game on Sunday and this (plus some feedback I got from some others) kicked me off on picking epicmaker, my D&D (3.5/Other) DM/Player tool suite, back up. I’ve cleaned up the project and started getting some of it together. It will possibly have a similar base architecture to spaceman; I need to reorganize the architecture it has one way or another.
First thing I did was prototype some of my item/treasure generator stuff. I finally came up with a system that should work for that while being both extensible and easy enough to control at finer levels. I prototyped it in Java because that’s what I have easy to run with at the moment; and it is actually well suited to the system I designed, oddly enough. What I have designed is actually meant to be implemented in a combination of code and scripted, so java seemed well suited to simply having stuff thrown in it and moved around later. Part of it really might just be how easy it is to code quickly in Eclipse. Not sure.

And what I’m sure most of you have been dieing to hear is that I’ve started updating Mystcraft to 1.3.x. I started today and actually finished the majority of it already. Mystcraft has moved to Forge Edition only and is currently built off of the 217 build of Forge. It works and it only needs to be test thoroughly to make sure nothing is broken. 🙂 I’m going to start throwing dev builds at my QA team soon and we’ll see how that goes. 🙂
The goal at the moment is to update Mystcraft as it stands to 1.3.x with only a few bug fixes. Basically there should be no mechanical differences between this and the last release (aside from said bug fixes). I may do a few minor things as I ‘walk by them’ when running around my code, but I don’t plan on adding or modifying any features.

I hope to have Mystcraft for 1.3.2 up for you in a reasonable time frame. Stay tuned!

Proper Usage of the BugTracker

Hello!

I’ve just spent the better part of the past two hours going through some really poorly written issues on the bug tracker.  Some of them were quite nice and well done, but most of them weren’t useful.  I’ll admit that during this interlude I was not in the best of moods because of this.  Sorry if I came across as harsh on anything.

I understand that the main reason for this is people do not know how to report bugs.  This is perfectly understandable, especially since most of the people reporting on Mystcraft are likely very young.

In this regard I want to lay out some basic rules and methods on creating an issue on Mantis.  These will help you in writing your report and help me in understanding it.  The better the report the faster it gets accepted and fixed. 🙂
Also, before I begin, any sufficiently badly written reports stand a chance of being closed immediately.  Make sure your report is informative and covers everything.

Basic guidelines:

  • Check for other reports for your issue first.  You may not be the first with this problem!
  • Be as informative as possible.  The more you give me the more I have to work with.
  • Type your best.  Don’t slur things or use 1337 or any short form of typing.  it’s not the place.
  • Keep it clean. I’ll ban people for using foul language or inflammatory remarks. I know that your bug probably has you very frustrated, but it won’t help your case to kick and scream like a three year old. 😉

Now, let’s step through this process.  It can be a lot to take in at once, so we’ll try to look at each part.

The category dropdown is meant to allow you to select the category that the issue best fits under.  Is it a problem with another mod (compatibility)?  Or maybe there is something wrong visually (rendering)?  Maybe it’s an error in the GUIs.  Whatever it is, select the most appropriate category.  If it is a general level issue (the whole mod breaks for no apparent reason when I push the F1 key) or no other category cuts it, then go with general.  Try your best. 🙂  If more than one suits then pick the best one.  We’ll handle that in a little bit.

Next is reproducibility.  This is where you indicate how reliably you can recreate the issue.  Does it happen every single time you do something, or only once in a while? Can you control it? If you mark ‘have not tried’ then you can guess the first thing I’ll be asking you to do. 😉

Severity and priority can be confusing, especially since they seem like they should be the same thing! Severity indicates how badly the bug affects our game.  It also includes an option for ‘feature’ which is meant to be used for requesting minor features or changes.  Major features should use the Mystcraft forum.  We’re trying to get some real forums up for you guys to blabber in, so hopefully that will happen soon. 🙂
Priority is how important you feel fixing this issue is.  Most times it seems like you can’t possibly play without this, but step back and think about it.  Keep in mind, this is actually the priority from the perspective of the project.  I don’t feel I have to say very much here as you have all done a fantastic job of setting this value. 🙂

Profile is an odd one, in that the name gives no information about what is desired.  It even confused me at first!  This is the basic specs of the compuer you are using.  There are four basic ones already saved into the drop down, but if those don’t quite fit the bill you can write it up yourself.  Platform is the machine spec, so usually x86 or x86_64. If you don’t know what that means then you can usually check whether you are 64 bit or not and just supply that. OS is your operating system, so usually Windows or OS X. OS Version is what version of that you are running.  In my case I’m running Windows 7, so I’d provide 7 as the version.

Product version is well named if you thing of Mystcraft as a product.  I don’t either, but Mantis does. Just select the version of Mystcraft you are using and you’ll be all set.

Summary: This one may be hard.  You need to summarize the issue as correctly as you can in about 6 words or less, giving as much information as you can.  You might need to think about it a bit.

Description is where you describe the bug in meticulous detail.  What happens and the general idea of what you were doing.  Be sure to describe what you were expecting to happen versus what actually happened.

Steps to reproduce is how I and the QA team know how to do it too.  You should describe your installation process and what steps are necessary in order to cause the issue in game.  If yo can’t recreate the issue then describe what you were doing the first time as precisely as you can.  Any omissions may make it impossible to recreate the event.

Additional information: This is a good place for your exception log and/or mod list.  If you do have a crash error and it dumps an exception be sure to provide it somehow.  Any other information you think would be useful should also go here, preferably before the error log.  If you need help getting an error log then you might consider using MultiMC.  There are also other methods of getting error logs when Minecraft fails without giving it on the MCF.

You can also upload a file. This is useful to provide a screenshot or the error log of the event.  You won’t need this most of the time, but don’t be afraid to use it if you need it!

Now you are ready to report your issue!  Check over it again to make sure you got everything right and didn’t make any typing errors or leave out anything before hitting submit.

You’ve successfully submitted a bug report!  Congrats!  Not that hard, was it?  But you aren’t quite done yet.  Due to the way Mantis works you can’t add tags to your issue on the report screen.  How silly!  It’s a known issue, and it’s already on their own Mantis tracker, but in the mean time we have to deal with it.  Now that you can look at your issue you can see a place where you can add tags to the issue.  Go ahead an look through the existing tags.  Add all the ones that fit.  If you experience the issue on SMP add that.  If the issue occurs on SSP as well then add that too.  Include the version of Forge you were using (ex Forge 152).  These tags are meant to make searching and information finding much faster, and by providing them you make your report 100% better. 🙂

If you realize now you made any mistakes you should still be able to go back and edit your own report.  Possibly.  I’m not exactly sure.
However, I do know that I can edit your reports, and so can the QA team.  And I also know we will. 🙂  This isn’t because you did a bad job, but we might go through and alter things as more information comes to light.  There are some fields that only we can set, and there are others that are for both you and us (ex. Reproducibility).  The issue will also go through several phases, starting out as ‘new’ and then moving through feedback, accepted, confirmed, and resolved.  Through this process it may change in various ways, and we may add things like when the issue will be fixed by, or even when it was fixed!  Don’t be afraid of it changing or worried about us editing it.  We’re just trying to keep everything clean and organized.

I hope this clears up any confusion with the tracker and helps you all make high quality reports! 🙂  Good luck!

Mystcraft Bukkit & General Update

Hello, all.  I’m still sort of off in limbo at the moment, but I wanted to give a brief update.

First, many of you have requested that Mystcraft have a Bukkit port.  davboecki has answered that request.  Many thanks to him for doing that! 🙂
Get it here: [url=”http://www.mcportcentral.co.za/index.php?topic=3541.0″]Topic[/url] [url=”http://mcportcentral.co.za/wiki/index.php?title=Ports_for_1.2.5″]Bukkit Ports Listing[/url]

Secondly, the design work for spaceman is going well.  I’m looking to start on the implementation of the architecture soon.  Most of the game concepts have been nailed down and I’ve solved most of the points I was concerned with, like how certain mechanics would behave while allowing for user created and controlled content.
With that the architecture needs to be refined a bit and I probably want to do that a few times until I have a solid description of how things will work together and what handles what.  I’d also like to do a few in-depth designs for how major interactions will work; tracing the interaction from menu to logic and back to the interface.  Just so I can see for certain that the design will work right in theory.  Then I’ll have to code the real thing and see how it goes.

Lastly, I’ve been waiting on Forge to update to 1.3 and I believe that it reached that point earlier today.  This means I can pick Mystcraft back up.  However, to be perfectly honest, I am enjoying my break.  This has been my first real holiday in years.  I will return to Mystcraft soon enough, never fear, but I’ll probably be taking another week before I start back up on it.  The first goal will be a 1.3 update with existing features (though maybe a few bug fixes) and then I’ll start on development proper. 🙂

Hope everyone has been enjoying their Summer! 🙂

All’s Quiet

Sorry for the general silence. Since we’re waiting on Forge to update to 1.3.x I’m taking a break from Mystcraft. I’m still answering questions and active on the Bug Tracker and IRC, but I’m not working on Mystcraft at the very moment.

Designs for spaceman have been moving along. Lots of things to decide on. Some of the ideas in the project are a bit ambitious and I want to design it so that they can be done either simply at first and improved upon later or simply done later without needing to rewrite everything else later, too. 😉

The plan for spaceman development is as follows:

  • Main Designs – try to get everything specified and planned out as best I can.  I’m paying particular attention to having a discrete, modular, and maintainable architecture at this point.
  • Project Environment Setup – Putting together my workspace and procedures.  I want to try to get most of the workflows laid out at this point, including the testing and build systems.  Focus is on automation of workflow and project structure.
  • Initial Test System – Build the base architecture and communication systems.  This is the framework and core phase.  Mostly interfaces and abstractions.
  • Initial ‘Playable’ – Hopefully the result of the previous phase is a ‘playable’ system which can be used to start testing mechanics and content.  If not then that is the goal here.
  • Game Content/Mechanics – Start work on the heart and meat of the game.

At this point I switch to a very iterative model where I basically continue adding, reworking, refactoring, and revising the system.  I’ll try to give updates as stuff happens at this point, and there will probably be screenshots/casts of the first playable. 🙂

Hope you are enjoying the Summer!