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.


Topics - Johnny Blockhead

Pages: [1] 2 3 4 5 6 ... 23
1
General Discussion / [Download] SuperPowered DM
« on: September 11, 2016, 08:37:41 PM »
Hey guys, I'm releasing the SuperPowered DM that I did a while back. It includes a bunch of script files and stuff, but no builds. Hopefully someone can get some enjoyment off of my old work. Note that this is not at all in a hostable, one-click setup condition. You'll have to download some add-ons and figure out the setup commands. I'm releasing this more for any of the people still trying to learn Torque. If you really are going to host it, I recommend you add your own flair to it and to not called it 'SuperPowered DM'.

Nope, I'm not giving you the download link, if you're somehow still viewing this. I decided I might remake it.

2
Suggestions & Requests / All-In-One-Seat Tank
« on: August 13, 2016, 01:15:01 AM »
Hi guys, I'm trying to find tanks that have one singular seat, in which you can both drive and fire. Teamwork is for nerds and I'd rather not force players to be in a situation where they're alone and they have to choose between driving and firing. So far there's the Light Tank, and also from that one tank pack there's the Hetzer, Neotank, and Pz. IC Vehicular. Anyone else know any tanks / how to mod existing tanks to not suck?

Also it's impossible to have a rotatable tank turret while making it drive-able right? That sucks.

3
General Discussion / What kind of server should I code?
« on: June 28, 2016, 03:19:06 PM »
No, this isn't an extravagant stuffpost. I'm actually trying to fish out some ideas so that I could steal them bring them to life. A few weeks ago I started up a dice-based DM server that was pretty popular. I've since grown bored/tired of developing it, and I've also genuinely ran out of ideas. I want to create something new for the Blockland community, but I'm not sure exactly what. I spent this morning developing a class based shooter (lower your volume) that was a combination of TF2 and Overwatch. It's pretty fun (in theory) and I think I could polish it a bit more, but I feel like the idea is overdone and I'm having a really hard time finding weapons to smack onto each and every class while still making it balanced. I feel like some of the weapons I'm using are stuffty and I feel like I shouldn't be using them at all but they're the only one filling the niche. Should I continue doing this, or something else? If something else, then what? If you have any ideas that you don't mind giving away then please post them in the comments.

4
Modification Help / [Solved] Rotating Emitters?
« on: June 27, 2016, 03:39:03 PM »
Hi BLF, this is a stupid question but how do I rotate emitters via script? Here's my emitter:

It's currently a vertical ring around my player. I want it to be a horizontal ring around my player. Is there a way to do this?

datablock ParticleData(HealerParticle)
{
   dragCoefficient      = 0;
   gravityCoefficient   = 0;
   inheritedVelFactor   = 0.15;
   constantAcceleration = 0.0;
   lifetimeMS           = 200;
   lifetimeVarianceMS   = 0;
   textureName          = "./Healer";
   colors[0]     = "0 0 0 1";
   sizes[0]      = 0.5;
   sizes[1]      = 0.6;
   times[0]      = 0.0;
   times[1]      = 1;
   useAlphaInv = false;
};
datablock ParticleEmitterData(HealerEmitter)
{
   ejectionPeriodMS = 1;
   periodVarianceMS = 0;
   ejectionVelocity = 0.0;
   velocityVariance = 0.0;
   ejectionoffset   = 1.0;
   thetaMin         = 89;
   thetaMax         = 91;
   phiReferenceVel  = 0;
   phiVariance      = 360;
   overrideAdvance = false;
   particles = "HealerParticle";
   uiName = "Healer";
};
datablock ShapeBaseImageData(HealerImage)
{
   shapeFile = "base/data/shapes/empty.dts";
   emap = false;
   mountPoint = $backslot;
   stateName[0] = "Ready"; //This is first
   stateTransitionOnTimeout[0] = "loopStart"; //Name of state to go to next.
   stateTimeoutValue[0] = 0.1; //Seconds for it to go to the next part of the loop.

   stateName[1] = "loopStart"; //Name of the state
   stateTransitionOnTimeout[1] = "loopEnd"; //next state you go to
   stateTimeoutValue[1] = 0.1; //Seconds til the next part of the loop
   stateEmitter[1] = "healerEmitter"; //The emitted emitter datablock here.
   stateEmitterTime[1] = 1; //Time for the emitter to last, in seconds.

   stateName[2] = "loopEnd";
   stateWaitForTimeout[2] = 0;
   stateTransitionOnTimeout[2] = "loopStart";
   stateEmitterTime[2] = 1; //Emitter lifespan
   stateEmitter[2] = "healerEmitter";
   stateTimeoutValue[2] = 1;
};


Proof of Concept:

5
Modification Help / Customizable Vehicles
« on: June 11, 2016, 07:56:39 PM »
Hi BLF, I'm trying to make an upgradable vehicle thing. I just want to be able to change the speed of a car, on a per-car basis. I've been going through a few solutions, but my options are limited as apparently I can't create datablocks during runtime (idk). What the code below is doing is creating 20 (or however high the max playercount is) vehicle datablocks. Whenever someone joins the server, they are handed out a personal datablock from those 20. When they leave, the datablock is wiped clean and awaits a new player. There are a few problems with this. One, I can't get it to work (See: Syntax Error) and two it won't account for people having many different types of vehicles that they'd want to use. Basically, this script would only allow for upgradable jeeps but in what I'm doing you're allowed to change the type of your car and this script can't account for that. I'd have to make another 20 tank datablocks in that case. Can anyone find a better, working way of doing this? I'm basically trying to do .setMaxForwardSpeed for cars.

package Stunts
{
   function gameConnection::onClientEnterGame(%client) //When you joined you're given a unique datablock
   {
      parent::onClientEnterGame(%client);
      for(%i=0;%i<$Pref::Server::MaxPlayers;%i++)
      {
         if($StuntCars::Car[%i].reservee $= "")
         {
            %car = $StuntCars::Car[%i];
            break;
         }
      }

      %car.reservee = %client;
      %client.reservedDatablock = %car;
   }

   function gameConnection::onClientLeaveGame(%client)
   {
      %client.reservedDatablock.reservee = "";
      parent::onClientLeaveGame(%client);
   }
};
activatePackage(Stunts);

if($CarDatablocksInitialized != 1)
{
   $CarDatablocksInitialized = 1;
   for(%i=0;%i<$Pref::Server::MaxPlayers;%i++)
   {
      %name = "StuntCar" @ %i;
      $StuntCars::Car[%i] = datablock ##W##heeledVehicleData(%name : JeepVehicle)
      {
         num = %i;
      };
   }
}

6
Modification Help / [Not Solved] Detecting if you're in midair
« on: June 10, 2016, 09:06:04 PM »
Hi BLF, I've been trying to solve this issue and Search didn't help at all. I want to find out if the player is off the ground in their vehicle. The two ways that came to mind were to detect changes in the z axis position/velocity or to get the distance from the ground. I tried the z-axis method, but it gives false-positives if you're scaling a hill (i'm dumb).

function Player::StuntLoop(%player, %lastpos)
{
   %car = %player.client.car; //%car is defined, don't worry

   %pz = mFloor(getWord(%car.getPosition(), 2));
   %z = mFloor(getWord(%lastPos, 2));

   if(%pz != %z)
      talk("Airborne!" SPC %pz SPC "!=" SPC %z);
//   else
//      talk("Not Airborne!" SPC %z SPC "==" SPC %pz);

   %lastPos = %car.getPosition();
   if(isObject(%player))
      %player.schedule(500, stuntLoop, %lastpos);
}


I couldn't figure out how to go about the other method. Anyone care to help?
I feel like there is an extremely easy way to do this like it's a default function or something. Badspot did it somehow with the mid-air kill notification. I need to find an efficient way to do it because I'm tracking air-time on vehicles, and to do that I'd need to make it a loop.

7
Hi BLF! When I scale a player to >0.9 size, they won't be detected by my code.

initContainerRadiusSearch(%client.player.getPosition(), 5, $Typemasks::PlayerObjectType);
%player = containerSearchNext();
while(%player = containerSearchNext())
{
   talk("I = " %i);
   if(%player.client == %client)
      return;
   if(%player.client.name $= "")
      return;
   if(%player.isGhost == 1)
      return;
   announce("\c3" @ %player.client.name @ "\c5 just got \c1G\c2R\c3O\c4U\c5U\c1U\c2N\c3D\c4D\c5P\c1P\c2O\c3O\c4U\c5U\c1U\c2N\c3D\c4D\c5D\c1E\c2E\c3E\c4D\c5D\c1D\c2!\c3!\c4!");
   %player.addVelocity("0 0 3000");
   %player.schedule(300, setVelocity, "0 0 -3000");
   %player.schedule(300, kill);
}


I'm clueless. What's going on here? If I scale them back to above 0.9 0.9 0.9, it works.

8
https://www.youtube.com/watch?v=sMgANt0yLc4 (if you can't go to 1:13, first verse preferred)
https://www.youtube.com/watch?v=JEHc4u-1QIk (whatever you can grab, fast part i guess)
https://www.youtube.com/watch?v=BOZM4IXMJ4g

thanks so much!
edit: nvm got bored and did it myself

9
Modification Help / Default lightning?
« on: May 22, 2016, 02:03:07 AM »
I remember that Blockland used to have lightning. Does that still work?
Yes, very



I was browsing this topic and found the lovey snippet above. It tells of a default lightning datablock leftover from days yonder. Anyone have any clues on how to actually use it? Not much else was said in that thread.

10
General Discussion / [Recruiting] Piexes' Super-Power DM!
« on: May 14, 2016, 09:09:57 PM »
Superpower DM


Welcome!

What is this server?
This server is a classical deathmatch combined
with aspects of a unique mod that I created! In
this mod you can assume one of 22 (and counting)
abilities presented to you with a role of a dice!
Enjoy mercilessly killing people while riding around
with your teleporting spears and time-slowing powers!

How do I get a superpower?
You can get a power using the light key. This
allows you to roll a metaphorical dice for your
next ability. This and more is presented in the
/help command.

Superpower List
Invisibility - Disappear with a blink of the eye!
Critical Hits - Temporarily increased damage.
Overheal - Turn into a tank with newfound HP!
Agility - Zoom across the map in a second.
Regenerate Health - Heal those pesky injuries.
Vampire - Suck the blood out of your enemies, and take it as HP!
Boost - Nearly instantaneous transportation.
Jetpack - Fly across the map in a quick swoop!
Teleport - Instantly teleport with a magical spear.
Rapid Spear - Fire a lethal barrage of spears.
Launch - Fly into the air, thrice!
Knockback - Cleanly knock someone across the map with one bullet.
Ground-Pound - Slam into the ground, harming anyone nearby.
Heal Bubble - Provide a sanctuary for yourself, and anyone who enters!
Poison Bubble - Throw this dangerous bubble that kills on contact.
Hover - Make any place in the sky your personal throne.
Vortex - Pull players close to you in a gravitational explosion.
Ultra-Rares
Low Gravity - Decrease the gravity for everyone on the server.
Throwmod - Activate the throwmod add-on!
Time Glitch - Disrupt the time-stream, messing with the timescale.
Boss Battle - Become a boss, try to survive.
Randomizer - Override everyone's weapons with randomized ones.
Quake-Like Players - Everyone in the server becomes quake-like.
Rocket Storm - Rain hell (and rockets) from above.

Is there map rotation?
Not at this moment, no. But, we do plan to implement it!
We need a few builders to help out Vonski in creating a map
of our own!

Staff List
Piexes - Mod Creator, Host
Vonski - Builder
DeathFates - Admin
Astronomical - Admin
Honno - Admin
OverlyGeneric - Ideas


Are you hiring?
Yes! We are actively looking out for admins, and especially
builders. If you get into the builder position, you also get
administrative abilities. If you want a position, use this
application:
Name:
BL_ID:
Skills:
Timezone:
Why should you be accepted?:

Is it online?
What would we do without a beloved server status indicator?
Either way, it's pretty much only hosted on weekends.



Screenshots:

(Map Credit: Monty)


(Map Credit: Vonski)

11
Modification Help / Trouble with transparent textures and triggers
« on: May 14, 2016, 11:40:46 AM »
How exactly do you create a transparent texture on a staticshape .dts? If it counts for anything I'm using Port's .dts exporter. I have an orange-y material right now but it'd be better if it was 50% transparent.



I'm also having trouble detecting when someone enters the sphere. It's awkward because triggers can only be square, as far as I know. I'd still be fine with a square though, but the trigger isn't even going in the right place. I tracked the edges of the trigger with orange/blue colors, and the red brick is the origin of the staticshape and the trigger.




The problem is that instead of the origin (where the player stands when they place it) being in the center of the trigger, it's at the edge. Is there an easier way to make these triggers, or just a way to center the trigger? Can I somehow visualize the trigger?

Code:
if(isObject(%client.healZone)){
   %client.healZone.delete();
   %client.healZoneTrigger.delete();
}

%client.healZone = new StaticShape(%client.name @ "HealZone")
{
       position = %client.player.getHackPosition();
       rotation = %client.player.rotation;
   scale = "1 1 1";
      dataBlock = "HealShield";
   canSetIFLs = "0";
};
missionCleanup.add(%client.healZone);

%t = new Trigger(%client.name @ "HealZoneTrigger")
{
   datablock = HealZoneTrigger;
   polyhedron = "0 0 0 1 0 0 0 -1 0 0 0 1"; //shape
   position = %client.player.getHackPosition();
   rotation = %client.player.rotation;
};
missionCleanup.add(%t);
%client.healZoneTrigger = %t;
//%t.setTransform(%client.player.getHackPosition());
%t.setScale("6 6 6");

schedule(60000, 0, eval, %client.healZone @ ".delete();");
schedule(60000, 0, eval, %client.healZoneTrigger @ ".delete();");

Datablocks:
datablock StaticShapeData(HealShield)
{
   shapeFile = "./shield.dts";
};

datablock TriggerData(HealZoneTrigger)
{
    tickPeriodMS = 100;
};
function HealZoneTrigger::onEnterTrigger(%this, %trigger, %obj)
{
    talk("You entered the zone!");
    %obj.client.centerPrint("\c5You're in the zone!");
}
function HealZoneTrigger::onLeaveTrigger(%this, %trigger, %obj)
{
   talk("You left the zone!");
    %obj.client.centerPrint("");
}

12
Modification Help / Hammer edit always spawns emitter?
« on: April 03, 2016, 02:52:59 PM »
Sorry if this is a nooby question, haven't done weapons in Blockland or even coded for it at all for some time.
I'm trying to make an edit of the hammer item, but white. Whenever I swing the hammer, it always spawns the hit emitter even if I haven't hit anything. How do I stop this? Also, it won't make any sounds.

if(!isObject(SpaceAxeItem))
{
   datablock ItemData (SpaceAxeItem : HammerItem)
   {
      uiName         = "Space Axe";
      image         = SpaceAxeImage;
      canDrop         = true;

      doColorShift   = true;
      colorShiftColor = "0.9 0.9 0.9 1";
   };

   datablock ShapeBaseImageData(SpaceAxeImage : HammerImage)
   {

      item         = SpaceAxeItem;
      showBricks = false;
      doColorShift   = true;
      colorShiftColor = "0.9 0.9 0.9 1";
   };
}

//Functions
function SpaceAxeImage::onPreFire(%this, %obj, %slot)
{
   %obj.playthread(2, armAttack);
}

function SpaceAxeImage::onStopFire(%this, %obj, %slot)
{   
   %obj.playthread(2, root);
}

function SpaceAxeImage::onHitObject(%this, %obj, %slot, %col, %pos, %normal)
{
   talk("This doesn't work :(. Can anyone figure out why? I think this only works for raycasts or something, right?");
   parent::onHitObject(%this, %obj, %slot, %col, %pos, %normal);
}

13
Off Topic / Political Compass Thread v1488
« on: March 25, 2016, 01:13:28 AM »
politicalcompass.org/test
The political compass is a online test that, once taken, summarizes your standing in the political field. Take it!
(at this point there's no reason to make these threads, you guys are all commie green bastards)

mine:


14
Off Topic / Blockland Music Thread
« on: February 09, 2016, 12:36:11 AM »
Hey guys, over the years people have tried to create loops that sound like they could've been a part of the original music for Blockland. Some I found while going on a nostalgia trip through my old posts:
Distort Piano Bass Remix
Blockland V21 UST - Sweet Jazz
Blockland V21 UST - Menu
Blockland V21 UST - Feel The Heat!
Afterschool Hoedown

This thread is for posting stuff like this, or making your own!

ps: can anyone find that one where it's a song made with ingame noises?

15
Off Topic / personality thread
« on: February 07, 2016, 12:12:49 AM »
Ok guys, recently I came across this website that gives you a test, and then spits back a result telling you your personality. It uses the Myers-Briggs system and categorizes you into one of the sixteen possibilities. Personalities are labelled using four letters, which represent different facets of who you are. Once you finish the test it gives a page listening the aspects of your result, which can be pretty freakishly accurate. I'm expecting a lot of people here to be INTP/INTJ, as is usual on the internet.

The different aspects are extraversion (E), sensing (S), thinking (T), judgment (J), introversion (I), intuition (N), feeling (F), and perception (P)
Take the test and prepare for the personality race war using http://16personalities.com

just to be clear ahead of time, ENTP masterrace (me obviously)

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