
Blog
-
Place Protection – quick update
Many people have requested a way to prevent others from
| February 17, 2007 -
Code Bomb
We’ve just pushed a Tools and Teams are both Some initial Tools and Team docs have been published to the wiki - I may write some articles soon that show how to use them in your maps. Post any bugs you find to the Support forum - we will be working through these Friday and early next week for the next release. - Telamon
| February 16, 2007 -
Scripting with Telamon: Debugging
Howdy! Today’s article is for Roblox power users who want to learn how to develop scripts in Roblox.
| February 15, 2007 -
Scripting with Telamon
Howdy! Today’s article is for Roblox power users who want to learn how to develop scripts in Roblox. This is not a programming language tutorial - I will assume you know enough about lua to look at a piece of code and guess at what it does. Rather I am going to teach you how to deal with buggy scripts and show how to debug them. Debugging in general is a mystical art - I use the word “art”, which is the product of innate creative forces, in constrast to “science”, which can be dissected, reduced, and taught. We’ve built some tools into Roblox Studio to help you though. strong We’re going to build a secret door. An easy way to make a secret door is to make a brick and set its CanCollide property to false. Anyone can them walk through such a brick. No. Our secret door is going to be special. It’s eventually going to guard the treasure room in my castle and it’s only going to let approved members of the Pirate Army through (Arrrrr!). Clearly we need some scripting here, me hearties. strong When I’m making a complicated script, I try to test it as I go along. I’ve seen a lot of people in intro programming classes try to write all their code at once and then test it. This is about the most painful way to write code. Don’t do it. Instead, write the shortest bit of code that you can test. Test it. If it works, add some more stuff. Then test it. If something broke, you know where to start looking. A more simple version of the door we want to make is a door that just turns transparent whenever anything touches it. a strong Ok, time to break out the power tools. If you have been scripting without these, I feel sorry for you. There are two that I will talk about today: the Output window and the Command toolbar. The first is by far the most useful, so I will focus on it. To bring up the Output window, use the View -> Output menu option. This is add a window pane to the bottom of your screen. This window will show the output from your scripts while they are running. If your script has an error in it, the error will be printed here along with the line number telling you where the script broke. Let’s look at both of these right now. In your new script, paste the following code: p As you can probably tell, this script prints “Hello world!”, spits out the numbers 1 to 10 and then crashes on an error. If you press the Run button in Studio, you can see this. The output will look like this: p This is telling us that line 7 of our script is bad, which is something we already knew. However, in a more complicated script, it can be very helpful to print out stuff as the script is running so that you can see where things are going wrong. It may seem obvious once I’ve said it, but if something is broken with your script, start printing stuff out - rare is the bug that will not succumb to this level of scrutiny. I once wrote an entire operating system, using only printf to debug it. a p And if you have a part named “Door” in your level, it will be immediately teleported to (0, 100 ,0) while the game is running. This is kindof arcane, but I mention it because I have found the Command Toolbar useful on occassion. strong Here it is: p If you have ever seriously tried to learn lua scripting for Roblox, you have looked at some Roblox scripts. The code for listening to a Touch event should look familiar. Basically I have wired up the Part.Touched event to call the onTouched function whenever the part is touched by another part. When this happens, the door will turn semi-transparent for 5 seconds. Add this to your Door script, save your map, and try it. If you touch or shoot the door, you will see a nice effect. If you have the Output Window up, you will also see a “Door Hit” message printed whenever the door is touched. If you did not see this message, you would know that the onTouch function was not being called and that you had not wired up the event handler correctly. strong Like I said, this is not a tutorial on actually writing code, only debugging it. So here is the finished script: p It has one bug in it. Without using the Output Window, the only thing you will be able to tell is that the script is not working. With the Output Window, the problem becomes obvious: p Since the script prints out “Door Hit”, but not “Human touched door”, we know the problem is somewhere in line 18 or 19 of the code. The Output window tells us that there is a problem on line 18 - findFirstChild is failing. Ah! That is because in Lua methods are invoked using a colon (:) instead of a dot (.) (all other languages of consequence use dots for this - curse the inventors of Lua!) Change the line 18 to be: p a - Telamon
| February 14, 2007 -
RobloxPolice Gives the Low Down on RobloxPolice
strong This week we reprise our Reports From Robloxia column, written by you, the citizens of Robloxia. This week’s article is written by RobloxPolice, one of our most accomplished builders and owner of the current #1 all-time most popular place on Roblox. Due to his skills and possibly his account name, people often assume that RobloxPolice is an official Roblox moderator or admin. To set the record straight: this is not the case. Rest assured, the Roblox Team has strong libertarian leanings; we would never set up a police state in Robloxia. Enough introduction, let’s see what RP has to say… - Telamon strong strong A lonely programmer like me writing an article to an international hit! Hi, this is RobloxPolice and I’m here to give the scoop and me and the Police Force of Roblox. A lot of people have been asking me who I am, so I’ll start there… strong a strong Well the Police Force is open to the best of Roblox. In order to join you have to be an honest trustworthy person above all! The Police Force is here to help and serve the community of Roblox! Here are the requirements for joining as I posted them in the forums: strong strong I’m not gonna tell you it’s as easy as pie! But I’m sure strong Well I can’t release to many details, but yes. There are some goodies coming. There’s some low level secrets like new maps and a new “competition” or “tournament” coming from the Police Force to see who really is the best of Roblox. I plan to start developing more new game types and possibly the First RPG map of Roblox History. But we’ll see what happens. strong I don’t just make awesome maps: sometimes I visit awesome maps and talk to other awesome people! So I’ve compiled a list of my top 5 favorite maps not affiliated with me… - RobloxPolice
| February 7, 2007 -
Encyclopedia Robloxica
The Roblox Community owes a debt to MrDoomBringer who has recently reworked the Roblox Wiki
| February 5, 2007 -
“Report Abuse!!!”
Every regular Robloxian has by now noticed the ubiquitous
| January 31, 2007 -
Reports From Robloxia
Last week the Roblox team decided we would like to experiment with a ”Reports From Robloxia” column written directly by our players for the Roblog. I solicited articles from a few of Robloxia’s finest builders and brick warriors, offering them the chance to write about whatever they like. - Telamon - - - span That is exactly what I told my friend who first showed me Roblox. Ever since then I have been playing this game pretty regularly. It really took me a while to kinda get good at this game… like some of you out there I was a total noob… but after a while and some practice vs. some of the better players like strong Ok well let’s see here - I’ll just start listing them… let’s say you are fighting someone and you and that person are not that far away. When this happens normally I like to whip out my rocket and shoot near them and close to the ground. Now you might be like why close to the ground… well the answer for this would be that you don’t have to hit the person you just have to get the explosion of the rocket to hit them to kill them. Sometimes the person gets lucky and just loses a leg. Another little trick I like to use is what I call head bouncing. So here is the situation someone is shooting from an area up above you… well obviously they have the advantage in most situations by being higher up. So my solution is the super ball. I get out that weapon and aim to hit their head. Now this won’t get you a one hit kill but hey it is more fun for you. If you have a nice shot it will hit your opponent right square in the head and their character will guy flipped over onto their back and bounce around for a bit, fun eh? Well since I don’t want to give away all of my little secrets and tricks here is the last one. Every once in a while you have to go up against a person who is good with the rocket. Well instead of dodging their rockets I like to shoot them down with a super ball. This way you can keep your position, you don’t have to worry about stuff falling down or hitting you, and just on some rare occasions if you do this quick enough the persons rocket will explode right on top of them. Oh yea when fighting if you want to stay alive remember to jump every now and then… ok, I am done now with tips and tricks. strong So what maps are cool out there… well that is all a personal opinion don’t you think? But here are the ones that I like right now. strong Now of course after listing to you all the places I like the most I am going to tell you what I think the coolest users are besides me of course, I mean come on I am the coolest (hope you all got the sarcasm there). These people you definitely want to be friends with. Thunderstealth a.k.a Pilotluke he is a good builder,
| January 30, 2007 -
Reports From Robloxia
Last week the Roblox team decided we would like to experiment with a “Reports From Robloxia” column written directly by our players for the Roblog. I solicited articles from a few of Robloxia’s finest builders and brick warriors, offering th...
| January 30, 2007 -
There is no “i” in Team.
What a fatuous thing to say. When it comes to motivational sentiments about teams, I prefer the following: But I make light of a very important issue. Ever since the beginning of Roblox, players have spontaneously organized themselves into teams and armies. The trend towards mega-armies seemed to die out on the site around November. This probably coincides with the point when we had gathered more users than one social clique could accomodate. However, the demand for team games has not died on Roblox. Quite the opposite. Take a look at this chart from early this morning: If you like to keep track of statistics like I do, you will notice that the top two places on this list are outliers. 564 and 477 visits in one day is an insane number of visits, considering that no longer than a week ago a number like 142 would have been enough to be #1 on this chart. Both the #1 and #2 places on this chart have earned Bricksmith badges in less than two days. Together they are more popular than the next 13 places on this list combined. What do these top two places have that the others don’t? Two things: 1) team play and 2) vehicles. We’ll get to the second one another day. Today I’m talking about teams. The Roblox team has been planning to add teams to the game since December. I’ve personally been working on developing team support in the engine for about a week now. Today I came in and got them mostly working, so I thought it would be a good time to spill some info on this Deep Alpha feature. Keep in mind this is a work in progress - the final product should look more polished. What you are seeing is a team leaderboard for a basic Red vs. Blue BrickBattle game. We have built team support directly into Roblox, so while making a team game today requires a Anyone who has played around with Roblox Studio will recognize what we have done here. A Teams service has been created, similar to the Players service, that contains 0 to N Team objects. These team objects have properties that let you customize how they will appear in-game and on the leaderboard. Isn’t this exciting? You can probably guess where we are going once basic team support is in place… - Telamon
| January 26, 2007 -
Bloxxers Who Roxor
More interesting factoids, mined from the Roblox database. I am working on a set of additional badges for a future release. New badges fall into one of two catagories: they are either entirely unlike any existing badge, or they are “higher level” versions of existing badges. Designing good badges is tricky. If a badge is too easy to get, it is pointless. If a badge is impossible to get, it is pointless. A badge that is challenging to get is fun. One “higher level” badge I am thinking of making is a more difficult to get version of the Bloxxer badge. At the moment, 64 Robloxians have bloxxers. Using my strong Requires: Knockouts > 500, Knockouts > (Wipeouts * 2) We are already planning to make an upgrade of the basic combat badge (Champion Badge), that anyone can get by playing long enough. The Bloxxer++ badge (whatever we decide to call it) is intended to mark the true elite of Robloxia’s battlefields. strong Requires: Knockouts > 1000 I am also toying around with an idea for a badge that is intended to show that you like to fight and is awarded whether or not you are good at it. Do people like this idea? strong Requires: Knockouts + Wipeouts > 1000 I am planning some non-combat oriented badges too - they are potentially even more interesting to talk about, but I’m not ready to spill the beans on those yet. I’m interested in hearing player feedback about these and other combat badges. The following table of all players with Bloxxers might inform your commentary. - Telamon
| January 23, 2007 -
Dreaming in Code
At least once a week I like to go to the Stanford bookstore and drink coffee while I read through books or magazines that I almost never intend to buy.
| January 22, 2007 -
This Old House
Soon all new Roblox users will start with a house instead of a cruddy 32×32 baseplate with only a table and a bed on it. The first time they visit their new place, they will see something like the image above. An empty house, teeming with possibilities. Thanks to the 9 players who participated in our little building contest, new players will have a choice of 46 items of furniture to place in their dwelling from the Toolbox. Of course, everyone playing now benefits too. Check out the new Furniture catagory in the toolbox the next time you need stuff to put in your house. We were surprised with the tremendous quality of the submissions. My personal favorite is If we were giving a prize for the most awesome scripted model, miked would take home everything. Incredible stuff. Let’s check out some of the other winning submissions, shall we? Bunk Bed Country-Style Dining Room Table Subwoofer 3000 Stereo System Racecar Bed Home Entertainment System Canopy Bed Retro-style Arcade Machine Other creative entries that we saw we a soda machine, a bouncy castle, a ceiling fan, and inflatable furniture. Yes, Robloxians will be living in style for months to come. strong When I started this contest I really was planning to pick just one grand prize winner. I was not anticipating the submission of so many high-quality models. You guys have saved me a lot of time creating all this furniture from scratch, so it seems like the only fair thing to do is to give a customized character to everyone who submitted a model that we actually used. The winners are: Incidentally, this is everyone who entered the contest. Guess the rest of you should have jumped on this, huh? I may be less generous in future building contests — you guys just saved me a lot of time and I’m grateful. strong Ok, we have a lot of winners, and customizing your avatar involves some work on my part, so everyone needs to read these instructions carefully and follow them so that I don’t go crazy. If you try any funny business like making an invisible character with transparent parts or setting the Humanoid MaxHealth to a billion, you will forfeit your prize. Please do not modify the actual model by adding, removing, or resizing parts. Make sure you get the model looking the way you like before you message me. I don’t want to change your character more than once. If you use decals in your model, remember that we still don’t support decals well in multiplayer. They may or may not be visible to other users. We are working to fix this in the near future. If you have questions or need help with any of this, message me. I’m shooting to get the new characters up by Monday. If you did not win, do not message me asking for a customized character. It takes time to set up and I need to spend that time developing Roblox. Everyone will get one eventually. strong I had fun runnnig this contest, but managing it was more time-consuming than I had expected. Should we continue to have building contests in the future? We’ve tried to have building contests in the past, but this was the first successful one. I imagine this is either because: 1) making a piece of furniture is a 5-10 minute job, so anyone can get involved without a large time investment or 2) people really want customizable characters and this was the only way to get one for now. Would anyone be interested in a building contest where you had to make something bigger? Like a house? Or an entire level? Or would that be too much? - Telamon
| January 20, 2007 -
Homestead Contest Update
strong strong strong We have received many high-quality entries and running the Homestead Contest has been fun. However, it is taking up a lot of my time, so I would like to wrap things up before the weekend. Therefore, the deadline for submissions will be - Telamon
| January 18, 2007 -
Homestead Furniture Making Contest
All Winners: All winning models get immortalized in the Roblox Toolbox. Thousands will see your work and hundreds will make use of it.
| January 17, 2007 -
Awesome Contest Entries
Keep them coming guys! I’ve added all contestants’ furniture submissions to the Homestead Contest Level , so everyone can go check them out. Submissions are grouped by author in the level. I’ve gotten some awesome stuff so far! I’ve gotten...
| January 17, 2007 -
Luck, Skill, and Chaos
The other day a player, gameshark, complained to me that he did not like the new Rocket Arena map because it required no skill to play.
| January 15, 2007