Show Posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.


Messages - Xalos

Pages: [1] 2 3 4 5 6 ... 203
1
omg congrats I hope everything is going well. I don't talk about it here often but I've been identifying as nonbinary since late 2018 [...]

Thank you, and congrats! Things have been going great for me - my life is so much better since my egg cracked and I started HRT. There's so much that I wouldn't be able to summarize everything!

[...] decided to start E in april of this year, after much deliberation and a couple years of waffling back and forth.

Congratulations! I hope everything's going well for you too <3

might cause some awkward family situations if and when it becomes more outwardly obvious, but until then i am chillin

Oof, yeah. Hopefully your family is chill, I wish you good luck!

2
You get demonetized.

* Xalos inserts the worst code she's written.

3
i think you hosted the first trench TDM server i ever joined in like 2010, when 20K IDs were new. I always think of that when I see your name lol. Glad to see you here

Thank you! Yep, I remember that server. It went through a lot of iterations over the years - the weapons changed a few times, and there were a few different versions of the lava moat. It also had the Ragemode boss, which in retrospect I probably should have given about a fifth the health so it didn't drag on so long. There were also a couple higher tiers if you waited to get enough Rage for them, but I don't think those ever got used by anyone who wasn't cheating (I gave myself enough Rage to trigger those variants a few times).

4
Wow, it's been a while - almost three years! I was browsing through my history when I stumbled on this post, so I figured I might as well reply.

I last posted on the forums on December 23rd, 2020. A lot's happened in my life in these last three years.

On December 25th, 2021, I realized I'm trans. I came out to my family and friends, started HRT, lost old friends, gained new friends, changed my name, got a girlfriend, got in a car crash, got a job to pay for my HRT, all the while looking to find a tech job that'll hire some random woman with no academic credentials or professional experience to speak of. Fun times!

Blockland holds a lot of memories for me, both good and bad. I remember the friendships I had across nearly a decade that I was part of this community, most of whom I've lost touch with and will probably never hear from again. I remember all the wonderful game mods I wrote and servers I hosted, and the fun times we had. I also remember the toxicity this community could bring, and how somehow Blockland always brought out the worst version of myself. More than anything else, that was why I stopped hosting - I don't like the person I become when I host.

To everyone I met, thank you for the good experiences we had, and I apologize for adding to the bad.

5
This library is mainly intended as a proof of concept to demonstrate that the .dso file format can be used to perform tasks that would be slow, cumbersome, or impossible with pure TorqueScript code.

GVarAccess.cs.dso implements two functions: getGlobalVar(%name) and setGlobalVar(%name, %value). They can be used like so:
Code: [Select]
==>$test = "Hello World!";
==>echo(getGlobalVar("$test"));
Hello World!
==>setGlobalVar("$value", "text");
==>echo($value);
text
==>echo(getGlobalVar("%name"));
%name
To execute the file, call exec("./GVarAccess.cs"); as with any other script file.

While getGlobalVar and setGlobalVar are not vulnerable to injection exploits like a naive eval-based implementation, they are capable of reading and writing any global variable.  Use appropriate caution about using untrusted inputs in calls to these functions.


Using .dso here is not intended for obfuscation.  As such, I've also included a text file which breaks down the GVarAccess.cs.dso binary.
Torque 3D has been publicly available under the MIT license for eight years now, so this doesn't reveal anything which could reasonably be considered secret.

GVarAccess.zip download

6
Modification Help / getFullDateTime() - returns MM/DD/YYYY hh:mm:ss
« on: May 14, 2020, 09:09:32 AM »
getDateTime() only returns two year digits, meaning it will not work if you happen to be a time traveller from 1920 or 2120.

If you need the full year, this is the function you need.

Code: [Select]
// returns the date and time, with the full current year
function getFullDateTime()
{
// get the current date and time from getDateTime
%value = getDateTime();
%date = getWord(%value, 0);

// if the date has changed, or the date has never been set, get the current century by creating a temporary file
if ($CurrDate $= "" || $CurrDate !$= %date)
{
$CurrDate = %date;
%file = new FileObject();
%file.openForWrite("base/temp/temp.txt");
%file.close();
%file.delete();
$CurrCentury = getSubStr(getFileModifiedSortTime("base/temp/temp.txt"), 0, 2) + 19;
fileDelete("base/temp/temp.txt");
}

// replace the year in the date with the full year
%date = strReplace(%date, "/", " ");
%date = setWord(%date, 2, $CurrCentury * 100 + getWord(%date, 2));

// return the full date and time
return strReplace(%date, " ", "/") SPC getWord(%value,1);
}

Known issues:
Does not work if the current year is before 1900. If you're time travelling from 1899 or before, you're out of luck.
Does not work if the function is called on the same day of the year, 100 years apart.
Does not work if the file base/temp/temp.txt exists, is read-only, and has a last modified date in a different century.

7
General Discussion / Re: Open Code Server
« on: April 30, 2018, 01:49:11 PM »
while(1);

If you want to run that code on the server, feel free to!

8
General Discussion / Open Code Server (hosted as Open Code's Server)
« on: April 30, 2018, 01:31:06 PM »
I am hosting Open Code once again!

The server is being hosted under an alternate key, named Open Code.

    What does "Open Code" mean?
The concept of an open-code server is something I had bouncing around long before I actually started hosting it.  Essentially, the idea is that everyone has near-unlimited access to the console, via eval - anyone can run basically any code.  Certain functions are blocked, such as crash() and quit().

    So the server is stable, right?
Not even close.  Just because I've blocked as many of the trivially-obvious methods of crashing as I can doesn't mean the server is in any way stable.  We're constantly finding new and bizarre ways to break the server, the game, and even TorqueScript itself.  Don't build anything you can't bear to lose here!

    My eval showed up as yellow/red/dark red!  What does this mean?
Yellow means that there's an error that the (unfinished) validity checker didn't realize existed until the end of the code.  This usually means you have an unclosed string or block pair.  Completely red means the code passed the validity checker but was still invalid; partially red means there's a syntax error where the red portion begins.  Dark red means that the code passed the validity checker but was never run; this only happens if there is some code which is not allowed, such as crash(), quit(), echo(), etc.

    Why is [insert piece of code here] blocked?  Unblock it!
Some portion of the code is inherently malicious - this includes things like crash and quit (obvious), echo (can crash the server and only useful for spamming the console), and trying to define a function with the name servercmdEval (would overwrite the existing /eval command).

    I accidentally crashed the server!  Am I going to be banned?
No.  It's my job to try to make the server as stable as possible, not to hide the instabilities from those who might exploit them.  An brown townogous situation would be antivirus software - they don't have the luxury of banning specific people from writing code; they have to instead flag the code as malicious based on the code itself.

    Did you ever fix chat overwrites breaking eval?
Yep; chat can still be overwritten, but anything prefixed with + will be run as eval, regardless what happens to the server chat.

    What are some examples of code that I could run?
+%hit.addVelocity("0 0 200");    Sends whatever you're looking at flying upwards!
+%obj.setPlayerScale(5);    Makes your player really large!

    Media from the Depths of Hell
The Soundscape of Open Code
Open Code: The Movie
Open Code - Spinning Around


Come make craziness and insanity happen!

Credits to Ipqµarx for having no life finding probably all the default functions which expose eval in an exploitable manner!

If you have a line of code that you'd like me to add to the example list, feel free to post it!

9
General Discussion / Re: older blockland user check-in.
« on: November 17, 2017, 11:56:34 AM »
I'm still alive.  After spending entirely too much time looking through my earliest mods (earliest one I could find was made on Sep 19th, 2010), looking at my forum registration date (May 31st, 2010), and finally looking at the forum registration dates of people with BL_IDs close to mine (various accounts from early 2009 to late 2009), I'm fairly confident I (read: my parents) bought my key in mid-2009.

If anyone else has a better estimate for when BL_ID 11239 might have been bought, feel free to correct me.  I don't have the original e-mail receipt available for dating, so estimates are as close as I can (be bothered to) get.

10
Game Modes / Blender
« on: July 04, 2017, 12:55:24 PM »
Blender, as seen in this thread.

If you want to use this in part or in whole for your server, add-on, video, or whatever, or edit it and make your own version, feel free.

11
General Discussion / Re: help we're trapped in blender
« on: June 12, 2017, 05:06:14 PM »
- this isn't revolutionary or even that complicated. Its just a bunch of static shapes being moved around.

hasn't been done before

I posted an add-on that involves moving static shapes around four and a half years ago.  People were doing it long before that.  In v0002, all bricks were static shapes, and you could even scale them freely.

It's been done before.

12
General Discussion / Re: help we're trapped in blender
« on: June 11, 2017, 01:46:35 PM »
oh its real alright. its not terribly difficult either - the only thing im not sure how they did was detecting the direction one drags the arrows/scaler

That wasn't terribly difficult either, nor was detecting the direction one is dragging the rotate tool.  But it's still a fun thing to play around in.

13
General Discussion / Re: help we're trapped in blender
« on: June 11, 2017, 01:32:43 PM »
The server is now open, but I'm likely to be restarting the server or clearing the world without any warning. Anything you make here is transitory at best.

I'm also likely to be AFK working a lot of the time and will be unable to explain anything. If you're familiar with Blender, the controls shouldn't be too unintuitive - the main thing is that crouching acts as a modifier key most of the time; for selecting it acts like shift and for transform tools it acts like control.

These are the server commands, with brackets notating optional components:
To change tools: /t[ranslate] /r[otate] /s[cale]
To add primitives: /cube /cylinder /cone /sphere /plane
To change your selection's color: /c[olor] r g b [a]
To smooth-shade: /shade 1 (0 to flat-shade)

14
General Discussion / Re: help we're trapped in blender
« on: June 11, 2017, 10:31:16 AM »
Make it so you can export .dts and .blb from blockland with this lol

.blb would be possible, but .dts isn't.  TorqueScript has no way to write binary files that contain a 0x00 byte, because TorqueScript only supports writing text to files.  Since Torque uses C-style null-terminated strings, it's impossible for the text you write to a file to contain a 0x00 byte, because that would be the end of the string rather than part of it.  The .dts file format contains 0x00 bytes, and indeed the second byte is almost always a 0x00 byte, so there's absolutely no way to create a valid .dts file from native TorqueScript.

15
General Discussion / Re: help we're trapped in blender
« on: June 10, 2017, 10:38:12 AM »
WHAT DARK MAGIC IS THIS

The darkest of dark magics!

Pages: [1] 2 3 4 5 6 ... 203