Author Topic: Blockland Glass Development  (Read 17403 times)

Probably make it so you can't press the update button more than once, I accidentally did that and my downloading progress got buggy. Not really much of a problem, though.
Also when I download something I do get this:
[i mg]http://i.imgur.com/rDpYHUC.png[/img]
What's that resizeable console window?

Turkey day news

We've passed 10000 downloads! Yay!

Well, actually, it happened a few days ago. Anyway, here's some more statistics:

User Adoption:

1.0.4226
1.1.0-alpha.410
Other28

*this is only data from activity in the past two weeks


Downloads:

Web4820
In-Game1983
Update1465
RTB2196
Total10464



On a separate note, Nexus and I began to lay down a timeline for releases. We want to get the new site out the door soon, but unless we have the in-game client also ready, there's going to be some issues.

I'll be working to get 1.1 out within a week (hopefully). My goal is to have a functional product. It'll be receiving updates as the underlying Support_Preferences receives updates, but in it's current state it works quite well other than some minor bugs.

After that, we'll begin 2.0 which will be the counterpart of the new site update. Here's what we have ready:

Revamped Categorization
Instead of the current boards, add-ons will be put in to much broader boards but also have tags that are much more specific. Browsing and organizing add-ons should be much more comprehensive.

Full AWS S3 Integration
The system uses S3 entirely to deliver content, meaning faster downloads! Yay.

New account system
Now, you'll register your account with your email address and your BLID. After confirming your account, your site username will automatically be the same as your in-game username. Similar to the old RTB, we also will track previously used names as long as when they were used.

New Notification System
The old "news" system is being replaced with personalized notifications, so you'll only see stuff relevant to you; change-logs for the add-ons you have, comments on the add-ons you follow, etc.

Trending add-ons
You can find out what's new and hot easier. Popular add-ons are now given some room in the spotlight.

Builds
I intentionally saved this for last. Nexus has been hard at work on a build system, which will allow you to upload, share, and download builds the same way you can with add-ons! Exciting, right? Even better, you can view the build from the site with an interactive viewer.

It's a whole lot of exciting stuff, and it's just our initial release. We have more planned for the future, as always.

Have a happy thanksgiving!

You might want to fix this:
http://forum.blockland.us/index.php?topic=288747.0

Basically people are getting kicked if they don't have Blockland Glass if the server has it.

Also, can you make a light/emitter section? Or is there already something like that?
« Last Edit: November 26, 2015, 12:47:41 PM by Kyuande »

Also, can you make a light/emitter section? Or is there already something like that?

Please, this.

That'll be in the new site.

I would also like a Playertype section.

I would also like a Playertype section.

That'll be there too, as a tag.

Alpha 4.2

  • Updated the required client message to include the mod list for non-glass clients, as well as explain that the functionality was enabled by the server host and is not required

downloaded development on a separate near-fresh installation to test it out. downloaded the required files according to the prompt that showed up. console complained that Support_Preferences does not have a client.cs (it's right, i looked inside, it doesnt.) restarted blockland just to make sure everything's alright. started a non-dedi passworded internet server:

Code: [Select]
*** CREATING MISSION
*** Stage 1 create
136 environmental resource files found
Regenerating file manifest
Got 2452 items in manifest, 0 files hashed

ERROR: WebCom_PostServer() - mission is not running
BackTrace: ->ServerSettingsGui::clickLaunchGame->createServer->createMission->onMissionLoaded->webcom_postserver


Add-Ons/System_BlocklandGlass/client/GlassPreferencesBridge.cs (0): Call to setConnectArgs in setConnectArgs uses result of void function call.
BackTrace: ->ServerSettingsGui::clickLaunchGame->ConnectToServer->ReConnectToServer->[GlassServerControlC]GameConnection::setConnectArgs->[GlassPrefPackage]GameConnection::setConnectArgs

 has the pref system. (version 0.0.0-alpha+glassbridge.1)
Got connect request from IPX:00000000:000000000000:0
  net name = Crispy
 +- missing client mods
Connection established
Connected successfully, killing other pending connections
AUTHCHECK: Crispy = LAN client -> internet server, auth with server ip
CDROP: 11557 - Crispy - local
Posting to master server
Post to master server FAILED: Connection failure.  Retrying in 5 seconds...
Posting to master server
the server simply would not load so i quit right here by closing the console.

also things seem to be using getSubStr in a way that throws errors into the console. not sure if this is a large problem
Code: [Select]
Executing Add-Ons/System_BlocklandGlass/server/GlassServerControl.cs.

getSubStr(...): error, starting position and desired length must be >= 0: ("Super Admin**2",0, -1)
BackTrace: ->ServerSettingsGui::clickLaunchGame->createServer->onServerCreated->loadAddOns->Glass::init->Glass::execServer->registerGlassPrefs->registerBlocklandPref


getSubStr(...): error, starting position and desired length must be >= 0: ("",0, -1)
BackTrace: ->ServerSettingsGui::clickLaunchGame->createServer->onServerCreated->loadAddOns->Glass::init->Glass::execServer->registerGlassPrefs->registerBlocklandPref


getSubStr(...): error, starting position and desired length must be >= 0: ("Admin**1",0, -1)
BackTrace: ->ServerSettingsGui::clickLaunchGame->createServer->onServerCreated->loadAddOns->Glass::init->Glass::execServer->registerGlassPrefs->registerBlocklandPref


getSubStr(...): error, starting position and desired length must be >= 0: ("",0, -1)
BackTrace: ->ServerSettingsGui::clickLaunchGame->createServer->onServerCreated->loadAddOns->Glass::init->Glass::execServer->registerGlassPrefs->registerBlocklandPref

my guess based on not even looking at the code: it seems to kick me for not having the client of the prefs system, even though i am the host and the prefs system does not even have a client. i could be wrong though.




edit: after looking through the code a bit, it seems to delete the client if they dont have the client mods without checking if its the host. also the prefs addons doesnt have a client still. not sure if its because it downloaded wrong but i cant seem to find an alternate modern download of this prefs addon.

looking more into the code makes me worried. i don't want the host to force me to download client mods!

some suggestions i have:
- allow the client mods to give a reason after youre kicked. "You need X mod so you can X." "You need Cool Keybinds! mod so you can DO SUPER COOL THINGS!." etc. have the links be an ingame download. if i dont want to download them, let me bypass with a "Join anyway" button which forces the server not to kick me that time. if they really dont want me there without the client mods, they can always kick/ban me manually.
- alternatively/on top of the above, have the client mods auto-download, with some VERY VERY strict rules on what the client mod can do. i dont want my installation to be destroyed or messed up! also have the client mods delete once i leave the server!
« Last Edit: November 26, 2015, 10:59:31 PM by Crispy_ »

i'd say force the client-sided addon to be accepted on BLG first, but blockland's so open that you could get around that

maybe don't allow it to be downloaded in-game, give a link out to the client addon in a kick message or something with a huge warning about the mod they need potentially being malicious.

even then idk

Problem with forcing client mods on people is the add on creating vulnerabilities to the client. Yes, there is a way to protect that but there's also other ways to get around the protection. I'd rather not take that risk.

Requiring client add-ons is fairly straight forward.

1) Upload it to glass.
2) Wait until it's accepted.
3) Clients get a yes/no box whether they want to download it when they join the server.

No accepted add-on should ever be malicious so security isn't a problem. It's all about making it user friendly.

I'm posting off my phone, so I apologize if I don't respond to every point you've made.

Thanks a lot for your dedication to tracking down the bugs and fully describing what you're doing. I actually haven't tried any of the system on a non-dedicated server, thanks for pointing that one out.

The required client mod system is far from finished, what's in now is mostly just a proof of concept. The system won't automatically download client mods, it'll prompt you first. On top of that, only add-ons that have been approved and are official Glass add-ons can be downloaded, meaning you won't run in to malicious code.

I'm against a "join anyway" because then it's just a recommended mod, which you can tell them to get in the welcome message or whatever.

Also, I'm going to be doing something like what RTB did with links, so something like <a:glass-13>link</a> will open the mod manager.

Hey, I wonder:
Will this have in-game chatting like Return To Blockland did?
And friends?

Also, I'm going to be doing something like what RTB did with links, so something like <a:glass-13>link</a> will open the mod manager.
How about just intercepting links to glass add-on pages? That way it would still work somewhat for people who don't have glass.

Hey, I wonder:
Will this have in-game chatting like Return To Blockland did?
And friends?
Still undecided. After everything we have in production now is finished, we'll visit the idea.

How about just intercepting links to glass add-on pages? That way it would still work somewhat for people who don't have glass.
I thought of this immediately after posting, it would probably be better that way.