1
2
In response to AERProductions
|
|
Try not to let the community get in the way of your success. While I might see it as good fun, others will not so I won't try and defend the community and say the behavior is warranted. I will say you shouldn't be throwing around things like "this community is sad", "this community sucks" etc because in the end it doesn't matter. I don't think a decent community would have built your net dream for you. I'm not trying to paint you in a bad light or anything, I'm just saying if you're really into getting you're game done, you'll do something about it. I would like to point out that while the toxicity of the community tends to rub on me too, I still keep my game dev aspiration. Whatever you Choose to do, I wish you all the best!
|
Very good to hear. I'm glad you are getting the recognition you deserve. Hope you continue to move up from here and do bigger and better things.
Some time after your release, I'd be interested in knowing your game's roundabout sales figures. I've read blogs here and there of game developers with only (if barely) a lick of your experience becoming largely successful from just being greenlit on Steam. You'd be second behind SilkWizard that I've had the honor of witnessing make that leap. |
As of today, multiplayer is finally 100% functional exclusively through steam! It all works really well and i'm super thankful and glad. I did a full blind playthrough today with my brother and it took 10 hours and went extremely well. As for an explanation of what I did with the multiplayer so others might potentially follow suit: Basically, I built a checkbox in the UI that when clicked will enable hosting. You can configure which port you want to host on prior to going live. This simply calls OpenPort(). Pretty simple. The title screen includes an option that allows you to join a game. Entering the IP:Port will communicate with the server. First, world.Export() is used to ask basic information from the server. There is some protection here that I won't detail for security reasons. Provided the server returns the correct information in the correct format, the player will be able to select a character or create a new one. This character is saved on the local system, and then a session is created by sending the player's save data via client.Export(). Finally, a browser is prepped with information pertaining to the multiplayer session and notified that a transfer is going to occur. link() is used to make the connection to the remote server. When the client reaches the server endpoint, the browser in their UI's information is updated. This browser's job is purely to make sure that the connection is still valid by polling winget() to get the currently connected url. If the client loses connection, the url automatically transitions them back to a single-player instance via winset() .url command. When a client opens single player after disconnecting from a server session, the last Export()ed version of their player savefile is checked for consistency with some security measures and then checked against their local savefiles. Provided certain information lines up correctly, the client-side savefile is merged into the local savefile. The session is resolved and the session data is wiped out. When a client crashes or disconnects, something similar happens, but the session data is not marked as resolved. We have to attempt to communicate with the last server that we were connected with on a session and ask whether we're still live on that server. This is a slight protection to prevent multi-clienting messing with writes. Transitions from single-player to multiplayer are pretty seamless. There are still some rough spots to work out, what with resource downloading sometimes happening when it shouldn't be necessary, and some lacking UI feedback about transition status. But it makes the process of playing a single-multi-player game a lot more like a professional game and a lot less like a BYOND game. A few pointers if anyone is to follow suit: The transition is not seamless unless you use BYONDexe. The feature-set is not possible to implement without at least a little javascript knowledge. There are feature gaps and bugs everywhere waiting for you in this area. Nobody has done this before. It's largely untreaded territory and unless you have access to BYONDexe and a lot of knowledge and patience, you aren't going to pull it off properly. It took me a week to get even remotely working correctly. Yut's code isn't that bad to work with. He only had a few areas that needed restructuring to hamfist this in. Will be honest, not having any good resources other than Lummox to point the way made the whole thing pretty difficult. |
That is why the whole community is sour and mean. Im not sour and mean. Im bitter and sweet. |
In response to FKI
|
|
FKI wrote:
Some time after your release, I'd be interested in knowing your game's roundabout sales figures. I've read blogs here and there of game developers with only (if barely) a lick of your experience becoming largely successful from just being greenlit on Steam. You'd be second behind SilkWizard that I've had the honor of witnessing make that leap. I'm guessing that even just by the end of the month Yut Put will have made a nice chunk of change. NEStalgia also launched in the middle of the month and had a pretty decent showing in the first two weeks: |
In response to Ter13
|
|
Ter13 wrote:
Standard long tail, or have you seen stego spikes, silk? Tons of spikes, particularly during Steam Summer/Winter sales. There are lots of other things that can randomly generate large spikes out of nowhere, such as a popular Twitch streamer discovering and playing the game for a week or two, etc. Even without the spikes I'm still incredibly surprised by the number of sales the game generates every month from simply being listed on Steam. Granted, I think that NEStalgia is an above-average performer for Greenlight games, largely due to the fact that there aren't any other games out there like it. |
In response to Silk Games
|
|
Been liking my time on it :P. Except the grind... oh god the grind DX.
|
In response to Silk Games
|
|
Beautiful. O_O
Appreciate your sharing. |
1
2
This just isn't true, which is what we attempted to explain to you before.
Anyone can learn to program as much as they can learn to make a sandwich. But if you are walking around with a bag full of excuses as to why you cannot, you will never get there.
No one here actually puts anyone down, you just make it seem that way because it does not fit into the aforementioned bag.
When new programmers make an effort to learn, many of us are more than willing to help. But there are also those who are not interested in learning and want everything handed to them. More often than not, that earns you a link to the guide.
I've only ever seen people try to push you in the right direction, but you always managed to turn the situation negative, which made you look like the bad guy. I'll be the first to tell you: there are no bad guys here (unless you count Lummox the supervillian), there are just people who love to do what they do, whether that's make games, program, art -- the list goes on.
This is why I said you must take responsibility for self, as that's all one can do at the end of the day. You will see your perception of what is actually is not.
Best of luck.