The ongoing 1.3 update epic

A place to talk to other users about the mod.
User avatar
RaustBlackDragon
Posts: 1748
Joined: Fri Oct 14, 2011 6:25 pm

Re: The ongoing 1.3 update epic

Post by RaustBlackDragon »

Hey FC, a modder friend of mine directed me to this incredibly helpful link. I'm not sure how much is left here that you're not aware of, but I thought I'd try and return the favor for all the info you've passed on to us:

http://wiki.vg/Protocol
What's the price of freedom now?
Can you cut me a deal?
A crate of wholesale liberty,
or a justice combo meal?
User avatar
FlowerChild
Site Admin
Posts: 18753
Joined: Mon Jul 04, 2011 7:24 pm

Re: The ongoing 1.3 update epic

Post by FlowerChild »

RaustBlackDragon wrote:Hey FC, a modder friend of mine directed me to this incredibly helpful link. I'm not sure how much is left here that you're not aware of, but I thought I'd try and return the favor for all the info you've passed on to us:

http://wiki.vg/Protocol
Interesting, thanks! I'll likely verify any of this info I need myself, as I rarely fully trust this kind of documentation, but it may be useful regardless.

And BTW, in case you missed it in all these posts, be sure to check out that IAnimal info I posted for you on the previous page. I think it will make your life much easier.
User avatar
Eriottosan
Posts: 656
Joined: Sat Nov 26, 2011 8:27 am
Location: U.K.

Re: The ongoing 1.3 update epic

Post by Eriottosan »

Yet more thanks for the updates of progress, and especially for the code snippet - I'm sure it'll come in helpful once I start updating! Keep it up, man. And again, don't burn yourself out! Thanks, FC (:
私は日本語が大好きだ。だから、私と話すとき、日本語で書けば、日本語で書いてください。
I like Japanese, can you tell?
User avatar
RaustBlackDragon
Posts: 1748
Joined: Fri Oct 14, 2011 6:25 pm

Re: The ongoing 1.3 update epic

Post by RaustBlackDragon »

FlowerChild wrote:
RaustBlackDragon wrote:Hey FC, a modder friend of mine directed me to this incredibly helpful link. I'm not sure how much is left here that you're not aware of, but I thought I'd try and return the favor for all the info you've passed on to us:

http://wiki.vg/Protocol
Interesting, thanks! I'll likely verify any of this info I need myself, as I rarely fully trust this kind of documentation, but it may be useful regardless.

And BTW, in case you missed it in all these posts, be sure to check out that IAnimal info I posted for you on the previous page. I think it will make your life much easier.
Thank you very much for that, though out of curiosity, do you know if it's possible to implement multiple interfaces in a java class? If not, I may have sparrow issues.
What's the price of freedom now?
Can you cut me a deal?
A crate of wholesale liberty,
or a justice combo meal?
User avatar
FlowerChild
Site Admin
Posts: 18753
Joined: Mon Jul 04, 2011 7:24 pm

Re: The ongoing 1.3 update epic

Post by FlowerChild »

RaustBlackDragon wrote:Thank you very much for that, though out of curiosity, do you know if it's possible to implement multiple interfaces in a java class? If not, I may have sparrow issues.

Code: Select all

public class FCBlockAestheticNonOpaque extends Block
	implements FCIBlock, ITextureProvider, FCIBlockSubtyped
;)
User avatar
FlowerChild
Site Admin
Posts: 18753
Joined: Mon Jul 04, 2011 7:24 pm

Re: The ongoing 1.3 update epic

Post by FlowerChild »

Mill stone grind progress indicator fixed. Easy peasy.

For modders:
Spoiler
Show
From my mill stone container class:

Code: Select all

	@Override
    public void addCraftingToCrafters( ICrafting craftingInterface )
    {
        super.addCraftingToCrafters( craftingInterface );
        
        craftingInterface.updateCraftingInventoryInfo( this, 0, localTileEntityMillStone.m_iGrindCounter );
    }
	
	@Override
    public void updateCraftingResults()
    {
        super.updateCraftingResults();
        
        Iterator iterator = crafters.iterator();

        do
        {
            if (!iterator.hasNext())
            {
                break;
            }

            ICrafting icrafting = (ICrafting)iterator.next();

            if ( m_iLastMillStoneGrindCounter != localTileEntityMillStone.m_iGrindCounter )
            {
                icrafting.updateCraftingInventoryInfo( this, 0, localTileEntityMillStone.m_iGrindCounter );
            }
        }
        while (true);

        m_iLastMillStoneGrindCounter = localTileEntityMillStone.m_iGrindCounter;
    }

	@Override
    public void updateProgressBar( int iVariableIndex, int iValue )
    {
        if ( iVariableIndex == 0 )
        {
        	localTileEntityMillStone.m_iGrindCounter = iValue;
        }
    }
I used ContainerFurnace as a reference for the above. You can find a good example of using this method to update multiple variables there as well.
User avatar
FlowerChild
Site Admin
Posts: 18753
Joined: Mon Jul 04, 2011 7:24 pm

Re: The ongoing 1.3 update epic

Post by FlowerChild »

A small bit of info with regards to watchable data on entities:

It will only send packets at time intervals specified in EntityTracker.java, and it will only send packets containing the watchable data, if there have been changes to it since the last time it sent a packet.

With stuff like the inLove variable, it's not as bad as it sending a packet every tick. HOWEVER, it does guarantee it will send one every second (since the data will have most certainly changed), instead of just when love mode starts and stops.

So yes, it's still a potential performance issue, but not as bad a one as I thought (1/20th as bad actually ;) ).
User avatar
Ethinolicbob
Posts: 460
Joined: Sat Feb 25, 2012 2:03 pm

Re: The ongoing 1.3 update epic

Post by Ethinolicbob »

Totally appreciate all these insights.
I have decided to take next week off work to work on my mod so I will put your comments to good use.
By the way how much time are you sinking into this?
User avatar
FlowerChild
Site Admin
Posts: 18753
Joined: Mon Jul 04, 2011 7:24 pm

Re: The ongoing 1.3 update epic

Post by FlowerChild »

Boo-fucking-yeah...
Spoiler
Show
Image
Now, I'm not sure if I'm too happy with that building design (was trying something new), but what I am totally fucking ecstatic about is that Wind Mill :)

There were two things I was most concerned about with the 1.3 update: my custom interfaces, and my custom entities.

Well, turns out I took care of the first of each today, and now that I've figured out how to do them, it should be all smooth sailing from here.

So, as I said: Boo-fucking-yeah :)

Now if you'll excuse me, I need to collapse for awhile ;)
User avatar
Ribky
Posts: 965
Joined: Thu Dec 01, 2011 12:08 am
Location: CONFIDENTIAL

Re: The ongoing 1.3 update epic

Post by Ribky »

Hooray! Enjoy your well deserved rest man. This is great news.
The spice must flow...

[03:28] <Detritus_> Weird, I'm still logged in her
User avatar
Battlecat
Posts: 499
Joined: Tue Jul 05, 2011 2:04 pm

Re: The ongoing 1.3 update epic

Post by Battlecat »

Rock on Flowerchild! What you've accomplished in the week since 1.3.1 was officially released is absolutely stupendous.

Have a good rest!
simanick
Posts: 133
Joined: Fri May 25, 2012 10:31 pm
Location: with out loss of genrality everywhere

Re: The ongoing 1.3 update epic

Post by simanick »

[quote="FlowerChild"][/quote]

whats this its not made of cobblestone?

Also Amazing, glad to here that the progress is not killing you, good luck.:)
Image
User avatar
TheAnarchitect
Posts: 1010
Joined: Fri Jan 13, 2012 6:21 pm
Location: St. Louis

Re: The ongoing 1.3 update epic

Post by TheAnarchitect »

Ah, the advantages of pessimism. Went in imaging the worst case scenario, and then...
Spoiler
Show
Image
Which is awesome. I'm glad it's going well.
The infinitely extendable Pottery system
Real Life is an Anarchy Server.
CueballSWR
Posts: 33
Joined: Fri Jun 01, 2012 3:13 am

Re: The ongoing 1.3 update epic

Post by CueballSWR »

TY FC
User avatar
FlowerChild
Site Admin
Posts: 18753
Joined: Mon Jul 04, 2011 7:24 pm

Re: The ongoing 1.3 update epic

Post by FlowerChild »

TheAnarchitect wrote:Ah, the advantages of pessimism. Went in imaging the worst case scenario, and then...
Well, not exactly. I think it's going pretty much how I expected on the time consumed front. I'm just happy to be over the roughest bits.
CreeperCommando
Posts: 196
Joined: Mon Aug 29, 2011 12:18 pm
Location: Living in a postBigBang world

Re: The ongoing 1.3 update epic

Post by CreeperCommando »

My god, you're a trooper with the coding. You really can make this sound easy o.O
I find this thread really interesting as I learn tons about "program design", I pretty much see programming as a necessary evil to learn (a very good tool to know) but I haven't really gotten to the application bit of it all... It immensely works as an inspiration seeing a professionals 'journal' when working with it.
Do this in your own pace and try to have fun, even if this is the grunt work right now ;)
Ribky wrote:Right into the hibachi? Damn man, God hates your windmill more than he hates the uncircumcised.
FC wrote:"You have defeated zrog the mighty! Have a potato."
FC wrote: "Does Dung Float?"
User avatar
FlowerChild
Site Admin
Posts: 18753
Joined: Mon Jul 04, 2011 7:24 pm

Re: The ongoing 1.3 update epic

Post by FlowerChild »

CreeperCommando wrote:Do this in your own pace and try to have fun, even if this is the grunt work right now ;)
It's honestly not so bad since I started my "new world" (in practice if not in theory). I play a bit...code a bit...go back to playing.

I was right about it making this much more manageable. And frankly, it *is* exciting to be seeing the mod get closer and closer to being SMP. I haven't been taking any short-cuts in that regard, making sure that I'm sending an amount of data that's appropriate to multiplayer and doing it in the proper fashion at all stages, so while this initial release definitely won't be for SMP, I'm very optimistic with regards to it in the future.

Anyways, it's definitely a lot of work, but it is rather exciting at the same time.
quew8
Posts: 5
Joined: Sat Jul 21, 2012 4:00 pm

Re: The ongoing 1.3 update epic

Post by quew8 »

FlowerChild wrote:this initial release definitely won't be for SMP, I'm very optimistic with regards to it in the future.
I can not even begin to understand why mojang would make an internal server mimicking multiplayer different from regular servers (I suppose its performance issues). But Jesus, WHEN DO YOU SLEEP? I take a light nap for a few hours and when I wake up you have fixed about 20 new things. My mind is blown, thankyou.
Making floors from sidings- "Damn I need a step here. Well this is odd, a BTW block that isn't completely brilliant. Hmm, oh no wait I just have to right click."
Don't you just love FC
CreeperCommando
Posts: 196
Joined: Mon Aug 29, 2011 12:18 pm
Location: Living in a postBigBang world

Re: The ongoing 1.3 update epic

Post by CreeperCommando »

FlowerChild wrote: Anyways, it's definitely a lot of work, but it is rather exciting at the same time.
Well I can prove that the excitement is contagious to at least one more person. :)
I haven't been more interested in anything program related than when reading your update journals (EDIT: as in I'm enjoying the journey).
Mind you that I'm supposed to know some basic Java, it simply doesn't want to stick in my head :( but as discouraging that is, seeing your progress is nothing less than inspiration to me.

Btw, sent you a little thank you ;)
Ribky wrote:Right into the hibachi? Damn man, God hates your windmill more than he hates the uncircumcised.
FC wrote:"You have defeated zrog the mighty! Have a potato."
FC wrote: "Does Dung Float?"
User avatar
Battosay
Posts: 2043
Joined: Mon Jul 04, 2011 7:37 pm

Re: The ongoing 1.3 update epic

Post by Battosay »

Awesome :)
It's really cool to see where you are in the update process with the screenshots, keep them coming :)
Interesting to read your tips too, even if I'm no modder, that's a good insight of how you're doing your magic, and I'm surprised to see that most of that code is somehow understandable to me :)

Btw, I sent you a drink to help you in this process, I don't know if you found it yet ;)
Adjudicator79
Posts: 119
Joined: Mon Jul 04, 2011 9:46 pm
Location: Washington, DC

Re: The ongoing 1.3 update epic

Post by Adjudicator79 »

I'm reduced to getting my BTW fix only through the forums, given my computer is in storage pending my coming move to D.C.

That said, this has been an awesome read, FlowerChild, and it's great to see you enjoying the modding work so much. I'll be expressing my pleasure more concretely as soon as I find the donation button again.

I'm a relatively smart guy - I've got oodles of degrees and you can ask me anything about international law, politics, or theory and I'll have something intelligent to say. But the stuff you're talking about makes me feel like the kid at the back of the class scratching my head and wondering when everyone decided to start speaking a different language!

Thanks so much for using your for-profit skills to make a free entertainment product for all of us!
User avatar
FlowerChild
Site Admin
Posts: 18753
Joined: Mon Jul 04, 2011 7:24 pm

Re: The ongoing 1.3 update epic

Post by FlowerChild »

quew8 wrote: I can not even begin to understand why mojang would make an internal server mimicking multiplayer different from regular servers (I suppose its performance issues).
They haven't actually. I think that's largely an issue with decompiling, as mentioned earlier in the thread.
quew8
Posts: 5
Joined: Sat Jul 21, 2012 4:00 pm

Re: The ongoing 1.3 update epic

Post by quew8 »

FlowerChild wrote:
quew8 wrote: I can not even begin to understand why mojang would make an internal server mimicking multiplayer different from regular servers (I suppose its performance issues).
They haven't actually. I think that's largely an issue with decompiling, as mentioned earlier in the thread.
Oh... <feeling_stupid> <\feeling_stupid> <acting_stupid> I just assumed it must be since you said this release wouldn't support multiplayer. Must have missed that earlier post though <\acting_stupid>
Making floors from sidings- "Damn I need a step here. Well this is odd, a BTW block that isn't completely brilliant. Hmm, oh no wait I just have to right click."
Don't you just love FC
User avatar
FlowerChild
Site Admin
Posts: 18753
Joined: Mon Jul 04, 2011 7:24 pm

Re: The ongoing 1.3 update epic

Post by FlowerChild »

quew8 wrote: Oh... <feeling_stupid> <\feeling_stupid> <acting_stupid> I just assumed it must be since you said this release wouldn't support multiplayer. Must have missed that earlier post though <\acting_stupid>
Nah, the main reason this release won't be SMP is that would require extensive testing and likely debugging all on its own. Yes, I would have to do some work in porting the code over to the SMP server as well, due to the deobfuscation thing, and I don't want to have to deal with that right now, but mainly I'm worried about quality control if I try to release for SMP right away.
quew8
Posts: 5
Joined: Sat Jul 21, 2012 4:00 pm

Re: The ongoing 1.3 update epic

Post by quew8 »

FlowerChild wrote:
quew8 wrote: Oh... <feeling_stupid> <\feeling_stupid> <acting_stupid> I just assumed it must be since you said this release wouldn't support multiplayer. Must have missed that earlier post though <\acting_stupid>
Nah, the main reason this release won't be SMP is that would require extensive testing and likely debugging all on its own. Yes, I would have to do some work in porting the code over to the SMP server as well, due to the deobfuscation thing, and I don't want to have to deal with that right now, but mainly I'm worried about quality control if I try to release for SMP right away.
OK 2 thoughts:
1: Thank you for explaining that (I know you don't really like doing that for fools)
2: Super impressed you refuse to release something because you won't compromise on quality on one or two bugs.
Making floors from sidings- "Damn I need a step here. Well this is odd, a BTW block that isn't completely brilliant. Hmm, oh no wait I just have to right click."
Don't you just love FC
Post Reply