Jump to content


Popular Content

Showing content with the highest reputation since 03/15/2021 in all areas

  1. 4 points
    lol username

    LEGO Town Builder

    My entry for the first LEGO Ideas Microgame contest. I'd consider it a proof of concept at most, but it got featured on the Twitch stream and got an honorable mention, so I'm pretty happy with it. https://ideas.lego.com/challenges/6811cf30-f944-4dfa-8714-9b38be6fbb52/application/b8ad6f16-dc81-400e-846f-6a0a9893908d https://play.unity.com/mg/lego/lego-town-builder-v1 I've also compiled standalone builds for Windows/Mac/Linux: https://www.mediafire.com/file/oy1iyoa9ixntmcy/LEGO_Town_Builder_Windows_64-bit.zip/file https://www.mediafire.com/file/p74m5b8cgzwf47v/LEGO_Town_Builder_Windows_32-bit.zip/file https://www.mediafire.com/file/rygmckuwkvzmyhy/LEGO_Town_Builder_Mac.zip/file https://www.mediafire.com/file/xfxyhojifwcafg9/LEGO_Town_Builder_Linux.zip/file They're nearly the same as the WebGL build, I just did a few minor fixes/tweaks, added one new "special" (non-randomized) minifigure, and added (automatic) saving of your town. I wasn't able to personally test the Mac/Linux builds but they should work fine. More misc details: Krysto did most of the minifigure textures and many of the LEGO models In the standalone builds, Alt + Enter can be used to enter/exit fullscreen The code is by far the worst I've ever written But it works I'd have liked to include more train track pieces but those were the only ones LEGO officially had in the Microgame's part library Seriously though the code is awful But it works
  2. 4 points

    Rock Raiders-themed LU Rocket

    MOC Update - 26/03/2021 The MOC has been tweaked to fix some of the nagging issues I had with the version I originally posted (the old version, as well as the original Topic OP, is still available to view just below this update). MAIN CHANGES: - Overhauled the structure of the Cockpit module's base (improving the exterior hull and the colour of the interior) and an improved base for the Engine module (with an improved underside, smoothed out with slopes rather than chunky-looking plates) - Cockpit module is now 1 plate taller to help it fit better with LEGO Universe's official Nosecones and Engines (still some alignment issues, but only with modules taller than the Venture Faction Rocket kit) - Colour scheme has been updated: The model now uses Modern Grey and Dark Grey colours (the previous version used the LRR-accurate Bluish-Grey and Dark Bluish-Grey colours, but due to personal uncertainty over whether LU had support for those retired shades of grey, I felt it was worth replacing them) - The colours on the front and back of the Cockpit module (as well as the front of the Engine module) has been fixed to continue the module's respective colour scheme/design (this is something most of LEGO Universe's rocket modules do too, but I didn't implement it properly into the original MOC as the design of their bases at the time didn't accommodate for it. With the reworked module bases, I was able to accomplish this and I'm pleased with the result - Removed the weird Trans Yellow/Green stub on the end of the engine. Not sure why I thought it was good enough to leave it like that, but I'm happy it's gone now. MORE SCREENSHOTS/RENDERS: All-in-all, it's still not perfect, but I'm faaaaaaaar happier with the MOC in it's current state than it was before and, for me at least, that's all that matters. ---------------------------------------------------------------------------------------------------------------------------------------------------------------------- ORIGINAL TOPIC OP: (I'll be surprised if somebody hasn't done this before) The "Bit's 'n Bricks" Podcast's recent coverage of LEGO Universe has gotten me interested in LU once again, and digging through wikis and old videos has been inspiring me to experiment with creating LU-like content. In this case, I wanted to experiment with building rocket modules, specifically by taking the bulky, rough style of Rock Raider sets/vehicles I'm quite fond of, and translating that style into LEGO Universe compatible rocket parts: OVERVIEW : NOTE: This is a screenshot of an earlier version of the MOC. For the current version, please look at the 26/03/2021 Update at the top of this Topic. The end result might be a bit rough (it's been years since I last tried building a LEGO MOC, much less one using digital building programs like LEGO Digital Designer or Stud.io) but I'm somewhat happy with how it came out. The MOC split into it's 3 separate modules LEGO UNIVERSE COMPATIBILITY : While the rocket looks fine using modules from the same MOC, using the MOC's Cockpit and Engine modules in conjunction with pre-existing LEGO Universe rocket parts leads to mixed results. Ignoring the obvious problem of mis-matching colour schemes, the design and shape of the Rock Raider modules work better with some module sets than others (for instance, both the middle and rear sections fit well with the Nexus Tower rocket modules - another rocket module set where the cockpit is roughly 6-7 studs wide - but the bottom of those modules, as well as the top of the nose-cone, don't align smoothly with the shape of the MOC's Cockpit module). The MOC Modules applied to various, pre-existing LU rocket sets, specifically the Nexus Force, Classic (Blue), Nexus Tower and Venture rocket sets respectively. While I was working on this MOC, I considered trying to build my modules using bricks that would've been available at the time LEGO Universe was out (since brick-built models would be restricted to the brick library available in LEGO Digital Designer at the time), but this plan fell apart very quickly. In the years since LEGO Universe's shut-down, LEGO has released plenty of bricks that help with building small details that likely wouldn't have been possible back then (pieces like the 1x1 bracket and the 1x2 slope with a smooth tile top were extremely useful, and I'd still be struggling with building the roll-cage if Minifig-sized hockey sticks didn't exist - Side-note: I'm sorry for not referring to those bricks by their actual names/Brick ID). As well as using bricks that wouldn't exist at the time, the MOC uses the old bluish-greys used in Rock Raiders, rather than the standard Grey and Dark Grey we have now. I'm not sure if LU had support for the old grey colours, but if it didn't then the colours would need to be fixed. MOC EVOLUTION : (This is a really really really long section, so don't worry about reading it unless you are genuinely curious about the evolution/process of creating this MOC, as well as the mistakes and lessons learnt along the way) Anyways, that's my first publicly posted MOC. Umm... enjoy??? [Shrug] (While not required, any thoughts/feedback you have about this MOC would be appreciated)
  3. 4 points

    Redesigned LEGO Racers cars

    Hello! A little while ago I finished redesigning most of the cars from LEGO Racers. I thought that people here might appreciate them as well. All cars: Rocket Racer: Captain Redbeard: King Kahuka: Basil the Batlord: Johnny Thunder: Baron von Barron: Gypsy Moth: Later addition: Veronica Voltage:
  4. 4 points

    The music of RRU Arena

    So a few years ago the one and only JimbobJeffers asked me to make some music for a game he was making called RRU Arena. Sadly the project was scrapped but the music still remains; and here it is in all of its perfectly loopable glory. As always, enjoy!
  5. 2 points

    LRR Musings

    I think it's more like you can't add new types of activities, but you can add more of the same activity. You could have a hundred different Activity_Waiting entries as long as the number on the end is different. So I can't add Activity_KickMonsterInTheFace since that doesn't already exist, but I can add Activity_Waiting100 if I wanted. Activities are a little flexible. In the past, I've added some "new" ones to the Rock Raider in order to support custom vehicles. You will not find the following activities in the base game, but they work. Go into the Pilot.ae file and look at the activities for vehicles (what the raider does when driving vehicles), and you'll see something similar. ;ON R3F1 Activity_R3F1 StandST Activity_StandR3F1 StandST ;ON Bulldozer Activity_Bulldozer StandBull Activity_StandBulldozer StandBull Activity_ClearBulldozer ShovelBull
  6. 2 points

    My LEGOs, including RR :)

    Here is the "complete" family of Lego Stunt Rally ! And now a new family : Yes, it's Lego RACERS ! Some pieces aren't with the good color, some pieces are still missing, some stickers too AND some characters are not exactly the same (too expensive...), but I'm so happy about the results !
  7. 2 points

    [LR2] Aqua Shark

    Replaces Player 3 by default.
  8. 2 points

    TrackMasters (A Lego Stunt Rally inspired game!)

    Hello everyone! It's been a while since the last post, and a lot of things happened in the meantime. The game got two major updates, which added an arctic biome, several track elements, enhanced gameplay, but that's not all : The game now support importing tracks from Stunt Rally directly, even though it's not perfect yet (because a lot of assets don't translate too well) it's a start The game also supports modding to a great extent now, which means you can add your own custom track pieces, custom vehicles, aswell as localization and sounds! All of that while preserving multiplayer functionality. Here are a few pictures of the game taken recently: [/url] If you want to know more about these updates, you can check out the links below: https://store.steampowered.com/news/app/1383120/view/2958262581895487693 https://store.steampowered.com/news/app/1383120/view/3064107954158542217 So to answer this properly, it is now possible yes :) Anyone can create custom cars and track elements for the game now. I wrote a comprehensive modding wiki about all you can do by modding TrackMasters, check it out https://wiki.trackmasters.louve.systems/read/home/1-getting-started.md If you're interested by the game, feel free to buy it or gift it to your friends - i'll also be watching this thread if anyone has questions about it :) I wish all of you an excellent day and week! ♥
  9. 2 points

    LEGO Print Creator

    If anybody else wants to use LEGO Print Creator, I've uploaded it to RRU Installer: Program files (No install required):
  10. 1 point

    LRR Musings

    Did this predominately to document it for Manic Miners, but thought I might as well put it on the forum too: a list of all the idle animations of raiders. There's a lot! Unused: VLP_backflip - Raider leans down and forward, then does a very quick backflip VLP_clap - Raider claps sarcastically slowly. VLP_clap2 - Raider claps slowly, as well as a very slight jump around the 3rd clap. VLP_clap3 - Raider looks around and claps. Of all the claps, this feels the most like actual applause from a crowd. VLP_clap4 - Raider claps very quickly and looks around a little. VLP_jumpceleb - Ever seen Mario jump in Super Mario Bros? This is it, complete with hand rising into the air. Falls back down and returns to standing a lot quicker than Mario does. VLP_look - Raider looks to both sides (before crossing the road ) VLP_rubhands_lookleft - Like VLP_rubhands, but raider looks over his left shoulder VLP_rubhands_lookright - Like VLP_rubhands_lookleft, but right VLP_Saxplay - Raider pulls a saxophone out of their right pocket, plays it whilst tapping their right foot in time as musical notes come out and swirl, then puts it away again VLP_Saxplayfast - Like VLP saxplay, but the music is quicker and the song shorter VLP_shiver - Raider shakes quickly for a brief moment. VLP_shiver_flap - Raider shakes quickly, and also huddles their arms close and stamps their feet VLP_wipebrow - Raider quickly uses their right arm to wipe their forehead. Used: VLP_beckon - Raider looks backward over their right shoulder, then swings their arm a full circle. I always took this for an arm stretch as opposed to any kind of beckoning VLP_clipboard - Raider pulls a blue clipboard out of their right pocket, reads it (subtle, but very convincing head movement: head moves left to right then down a bit then left to right then down etc), nods, then puts it away. VLP_rubhands - Raider rubs hands and stomps legs, like one does to keep warm. VLP_scratchhead - Raider uses their left hand to scratch their head. VLP_Standingjump - Raider quickly jumps into the air. It's really impressive how low-poly yet incredibly detailed these animations are. Whoever made them did an outstanding job. Even though Lightwave forgot where the textures on the raider where and it was a blend of triangles, it was incredibly impressive how easy it was to see what was going on. It's outstandingly clear that VLP_clap3 is applause (perhaps for the saxophone player?), despite being so incredibly small. Oh, and if you want to enable these animations you'll need a handful of lines in Pilot.ae. You can already see that four of these animations are used under Actitives: Activity_Waiting1 Waiting2 Activity_Waiting2 Waiting7 Activity_Waiting3 Waiting16 Activity_Waiting4 Waiting20 all you really have to do is expand this out from Activity_Waiting5 to Activity_Waiting20. Normally, if you were adding your own, new, animations, you'd also need to define them like, say: Waiting14 { FILE VLP_Saxplay TRANSCOEF 0.0 LWSFILE TRUE } but they're already defined there in Pilot.ae, they just aren't hooked up to be idle animations. Quick AE technical note, as these files aren't documented much: the Activity_Waiting is hardcoded and is the idle animations that will play. The number at the end of it indicates that the game will pick one of these at random to play when it decides to play an idle animation. The name of Waiting2 isn't important at all and solely links to later in the AE file where the actual .lws file is defined.
  11. 1 point
    It's been a long while, but today the largest update so far drops for Manic Miners! The vehicles are here, together with an extensive miner customization system and many surprises and improvements. Dive in and re-live an almost-complete Rock Raiders remake today! The only thing missing are the monsters... so stay tuned! Thank you for following development! V0.3: The Miners and machines update trailer: Initial reveal trailer: Latest version: V0.3.5, released 2021-01-28) Download link: https://baraklava.itch.io/manic-miners Resource links: Trello (my development progress) Discord (active daily discussion AND usually weekly in-progress builds) Subreddit (active daily) Facebook page (not very active, but will announce major updates) Here's some more information on the project, taken from the Trello: If you have played the original Rock Raiders game and just want to jump right in without reading the project backstory and explanations, here are some quick notes: Original post: Full information dump can be found here
  12. 1 point
    So I guess I'm not the only one who has spotted pizza both at the start menu (being cooked near the lava) and in-game (popping up at random chance). Really loving the minor details that went towards game play, from the ability to chuck around different materials, to grabbing dynamite from the Tool Store and either blasting any walls at your own volition or just fooling around with it. Since I recently unlocked Axle, I found some rare interaction between him and Bandit whenever Bandit goes into the Chrome Crusher. Not too sure if this is one of the few/many easter eggs in the game. Bandit: "Don't tell Axle." Axle: "Tell me what?" Bandit: "RRRRGGHHH!" Stuff like this makes me feel giddy, like I'm my old adolescent self again.
  13. 1 point

    Drome Comics!

    Hey! I've got something to share. I've used a lot of my time for the last couple of months dedicated to Drome Racers history and archival projects. I think I'm able to tell you guys that I've recieved all known scanned issues of LEGO Racers Official Racing Programme. The thing about these comics is perhaps how they went virtually unnoticed for over a decade of time beyond a couple of bricklink listings. Me and a couple of friends dived deep into archiving these comics and we got some info about why they were originally lost to begin with - the gist was these magazines were given away for free in limited sets, toy shops and events, AKA extremely (and impossible to find) rare in English. The comics included in these magazines were also present as motion comics on LEGO.com, but those are lost to time now. http://imgur.com/gallery/F55eYSO (ISSUE 1-2: BOTH ARE IN GERMAN - IT'D BE APPRECIATED IF ANYONE COULD TRANSLATE IT) http://imgur.com/gallery/LCJOKBE (ISSUE 3-4: ALL ARE IN ENGLISH) - I'm still on my way to tracking down the advertised 5th issue but I'm certain it's either cancelled or even rarer to find. Me and the group are figuring out our next move. I hope this was worth it because it sure was to me!
  14. 1 point

    Campaign 2 91% Complete | Now: First Level-Correcting Phase|

    Hi! Yeah, Im still alive. So, as already well known, Im not working on it since some years. The data and all is still available and the work isnt destroyed or so. I recently know, that the most time-consuming part is, to polish the modded Levels. The Levels may need to get remodeled, because I sometimes made destroyable Walls to close to the maps border (1 undestroyable wall to border, than destroyables) , and the Camera stops to far to get a good view, on what is there. Its no problem for the gameplay, just for the games playability. (Also, there are some levels which dont works as intended, which breaks the level and make it unsolvable, espacially those, which need a lot of scripting) Also I got a classic problem of working on a digital project: At the time I was working on it, I get more and more better with the Level Editor and Scripts and as so, after making a lot of levels I thought: Ouch, you need to redo some levels, because Trigger X and Part Y does not work in that way you thought. And so, the Levels was made, but in further working they seems to need upgrades. Thats a circle of work in polishing Maps... And I didnt know that the years I worked on it, and put a lot of time into it, without getting much progress or even a finished version for public. That was one big reason to stop working on it, because it seems to dont get finished even I worked a lot on it. Well, I finished at the end of 2020 my university life, which costed a lot of time. I may be able to engage to this, but I wont say if Im able to get this thing finished sometime. If I can start working on it more, I just would post here if I can get a real progress, all other wouldnt be nice after loosing the time to work on it. Well, so far, its existing but no working on it. At least, no tellable work. Greetings, Hammerkraft/Magiehammer P.S.: Sorry for not answering that long, I thought I get a notice-mail when something is going on in this thread, but yeah... Thanks to @webfischi for contacting me
  15. 1 point

    [LR2] Classic Hoth Rebel

    You can now race as the legendary opaque brown visor rebel in LR2! Replaces Player 1 by default.
  16. 1 point

    This website died because of discord

    Definitely. I mean, as long as there are knowledgeable people in those Discord servers, you won't have a problem. But as an engineer, I have to object to the premise of repetitive work that wastes energy. Having a neatly organized forum or catalogue of problem-solution tuples would be ideal, of course, but I think that is also an outlier situation. I've known no forum that was easily traversible or actually had neatly organized topics. Most often the categories are too general for that, and people often don't know where to correctly submit their question/idea/solution and then they get shunned for choosing the wrong categories and labels (at least, that's what I imagine it would feel like). That doesn't promote the proper use of forums either...
  17. 1 point
    A Person

    This website died because of discord

  18. 1 point

    Tamed Rock Monster

    I upload a new version of this mod here https://www.rockraidersunited.com/files/dl-r416/ The drivable rock monster can clear rubble and drill wall
  19. 1 point

    Coming back to the site.

    Hello all, you may or may not remember me, but I have been thinking for a long time now about coming back to this site I remember when I did stupid things like spam topics,dumb child content, really bad grammar and spelling,and of course weather reports. But that will be no more, I promise for real I learned from my mistakes. So my goal is to have a new fresh start here by starting over, If some one would be so kind to give me advice on how I could improve even more I would be gladly appreciated. Any ways I want to start fresh with a new overhaul since I had no clue what I was really doing in the first place when I started with overhaul making and modding.Now that I am much better at modding and making levels I should be able to do a lot better now,but I still don't know how to do animations or modelling that is to advance for me. So now I must apologize,for all the hell I putted you through I'm very sorry. Last I'm also going to spend most of my time now talking about rock raiders ,modding it,and getting help with the modding as that is what this site is mainly about, why talk about your favorite TV show or brony stuff etc. Ps If a mod would delete or at least lock my old spam topics I would be gladly appreciated. Hope to see you around I promise thing well be much different,and if they aren't just ban me. I have to admit that I was very scared just to write this.
  20. 1 point

    Hematite Howitzer

    It's done but i do some little change for new vehicle
  21. 1 point

    The music of RRU Arena

    Aw yis, the soundtrack has finally been released, it's really damn good Shadowblaze! I was so amazed when you sent them over yonks ago, they perfectly captured the themes they were based on in a frantic battle setting Maybe someone else will make a game some day that they can be used in. Yoooo let's not be so presumptuous Ben haha. Looking through my old files, RRU Arena was apparently the last Flash game I ever worked on - if I recall correctly I simply lost interest in Flash programming (its end was nigh by that point anyway) and moved on so the game was never taken beyond the basic menu and player programming, I was nowhere near the point of adding actual art assets yet. Nothing to do with you dude.
  22. 1 point

    The music of RRU Arena

    Sorry about that, the fact it was scrapped was likely my own fault. (I was brought on-board as an artist, but this was back in the days where I'd naively just join/start new projects without thinking whether or not I had the time/skills/dedication to do so. As a result I struggled to maintain interest in the project and was eventually forced to leave the project in order to focus on my education. Considering that was the last I heard about the project and it was never publicly mentioned/teased in the years since, I assumed that me leaving the project might've been partially - if not entirely - responsible for killing the project) I remember being told that you were working on the soundtrack, but I never got to hear it until now and honestly, it's great stuff! (Regarding the LEGO Racers track, I especially love the way you added/remixed the game's music samples... makes it feel nostalgic, whilst still audibly unique to fit with RRU Arena's tone. It's excellent work!)
  23. 1 point

    Redesigned LEGO Racers cars

    Thank you! I appreciate the feedback. I'm glad you like them more than the original. I tried to preserve the proportions, colour schemes and most iconic features of the original cars. Though with some cars I took quite a bit of creative freedom, considering the original cars sometimes had very little defining characteristics. Captain Redbeard and Baron von Barron for example. Their cars had so few pieces it's hard to even imagine what the original designes were even supposed to represent.
  24. 1 point

    Rock Raiders-themed LU Rocket

    This is frickin' amazing! I really enjoyed that podcast too, your MOC captures both Rock Raiders and LEGO Universe so fantastically well. I love it, especially that curved angled chunk at the back. Thanks for all the detailed pictures and info you shared with it too!
  25. 1 point

    Rock Raiders-themed LU Rocket

    Looks awesome! I'd love to see what it looks like in-game, but I'm not sure how modding rocket parts would go. (is that something you could just replace a brick model for? hmmmmm will have to look) Makes me wish DLU was already at a point where we'd have the spare time to add items like this.
  26. 1 point

    Hydro Thunder Boats

    Since I've made too many boats, I've decided to make one thread for all of them. The previous threads have been merged. More pictures will come. Check the spoilers under each main image for more on each boat. Family photos: Miss Behave I was recategorizing some mixed bins by color and I found a few TYCO army bricks. I don't have very many but I was able to use them in a build. Hydro Thunder was on my mind so I tried my hand at some nonstandard building techniques. Miss Behave isn't my favorite boat, but she's pretty good when taking her off a ramp. I feel like I could have done better, but I used almost every single one of the olive green bricks I have. Let me know if you want different angles. This was a quick afternoon build and I took the pics almost as quickly.
  27. 1 point

    Hydro Thunder Boats

    Those boats look cool*! Don't worry too much about some boats not looking exactly like the original since they are made out of LEGO bricks and getting curves at that scale right is probably impossible. My favourite has to be Rad Hazard because of the RC Function. Imagine it having a camera like those Mario Kart RC Racers from Nintendo and then you can see the racing course from the boat's perspective : D. *I like the colour scheme from Tidal Blade the most with orange and purple etc.
  28. 1 point

    Hydro Thunder Boats

    Quick 'n Sik Hey, you found a secret! Here's (probably) the last boat I'll make for a while. It's a completely original design, loosely based on Damn The Torpedoes. Since I don't have a fuzzton of purple bricks, I had a lot of blues that were taking up space, and that weird upside down Ogel windshield refused to go away, I went for this. It's a little basic, but that's okay. There aren't any special features here, but the cockpit does have extra bricks that can be removed to convert it to hold a full minifig instead of just the little chubby Racer figs. Twin V8 engines because why not. You can also clearly see the female-to-female TYCO plate I keep using. It's holding the Ogel windshield in place. Check out the first post again as I've updated it with new family photos of all the boats.
  29. 1 point

    Hydro Thunder Boats

    Rad Hazard Use your booster! It's time for a few more boats. I built these around Christmas and forgot to take pictures until now. Rad Hazard is built from parts salvaged from a crashed UFO (according to the game), so it's both a spaceship and a boat. I leaned into that and added hidden rifle racks, pop-out radar dishes, and concealed missiles (most of these were removed for the pics and are not HTRA-certified). There's one more trick here... I wanted to make a remote controlled boat, so I looked for different R/C chassis that LEGO made, and I found the 8183 Track Turbo RC. This boat moves!... but it doesn't steer. The steering mechanism doesn't work very well even on the bare chassis. Rad Hazard is far too overweight to do more than move forwards and backwards. I don't care though, since I technically accomplished my goal. Getting the shape and the boost mechanism to fit together just right took a lot of time; at least a week. I didn't have enough of the right pieces initially, but my brothers donated some weird Star Wars walker a month earlier, so I ended up using that set for much of this boat. Most of the new light grey pieces came from it. I don't know the model number, but it looked like the top half of an AT-ST with eight legs that moved up and down when you pushed it forward on hidden wheels in the base.
  30. 1 point

    This website died because of discord

    The one downside of this is that it doesn't show up in a Google search. Someone needs to actually (a) know that RRU exists and that it focuses on the subject matter related to their problem, (b) know that it has a Discord, and (c) join said Discord. RRU is probably niche and unique enough that this doesn't end up being too big of an issue; it probably doesn't take too long for someone with an RRU-relevant problem to find out about RRU even if their first google search doesn't land an exact hit. But for stuff outside of RRU's domain for which there are dozens of overlapping websites and Discords, e.g. tech problems, Blender problems, etc., the idea of having to join 20 Discords rather than being able to do 1 google search frustrates me to no end. XD
  31. 1 point
    Jack Bluebeard

    LEGO Racers Beta Project

    Update: I wiped all the old textures (except one I think lol it was already good) and replaced with good upscaled ones. I also had great fun upscaling alpha and beta screens :^) Old one New one from upscaled beta screenshots I like this stuff ngl
  32. 1 point

    LEGO Island REDUX

    Is this still in development? There was no update for almost 2 years. Author last visited in August of 2019. It should have really been made open source
  33. 1 point

    Hydro Thunder Boats

    Armed Response Woah woah woah, slow it down you freaking maniacs! We're trying to save lives here! Every hero needs a villain. This boat shows up in some of the tracks as an obstacle that tries to get in your way. You can unlock it and use it yourself, but it's slow even while boosting. The turret guy fires on boats behind you, not that the bullets do anything. The booster is quite simple but a bit complex at the same time. Spacing was crucial and the whole module stays in place via friction. There are also little kickstands that can fold out to keep the booster in its deployed position (look near the corners). This build is my favorite out of all them as I feel like I captured it the best. It's not my favorite boat to pilot. That's either Banshee or Tidal Blade. This one took about two days to make.
  34. 1 point

    Hydro Thunder Boats

    Tidal Blade Narrow path ahead. This one was actually fun to build. It's 2000 horsepower and full of fury! And it was a way to use up the few orange and purple bricks I have. I had to build the engine section upside down because I didn't have enough under slope bricks. It worked out in the end. The boosters are supposed to slide out on rails, but that would end up way too chunky. Hinges work fine here. I cheated again with TYCO bricks on the yellow scoop at the front. There are two black 2x2 female-to-female plates there. Does that make this an illegal build? Here's a fun little fact as well: the amber flame pieces you see here came from my trip to the LEGO Store in New York City last year. They lack the little nubs near the base that the older orange flame pieces have. This makes them more versatile since I can stick them into the round orange plates on Banshee. I'd say this one took about a day to build in total.
  35. 1 point

    Hydro Thunder Boats

    Midway Uh, I got a bad feeling about this... This one, despite being the easiest of beginner boats, was the hardest to build. Midway is painted with all sorts of gradients and stripes that were hard to capture in bricks. I especially took creative liberties with the cockpit (the first revision was hot garbage). The booster, too, was difficult, but I got it on the second try. Hey, what about that rollcage piece? That's a Znap brick, which was some weird late '90s K'nex competitor. I don't know why TLG thought K'nex was a competitor, and they already had Technic... these were pre-Bionicle days, so they were still flopping around for ideas. This definitely took me two or three days to make.
  36. 1 point

    Hydro Thunder Boats

    Razorback You're crazy! Razorback is the third boat I built and that's when I knew I couldn't walk away. I have a ton of red pieces and this was a good excuse to use some of them. The booster was a bit tricky but wasn't too bad compared to the other sportsman-class boat. The black cheese bricks lock the outer exhaust assemblies in place. There's a sweet spot where you can spin them, otherwise they can't move. The wing is extremely fragile, but it's the best I could do with the yellow bricks I have. I think this took nearly two days to build.
  37. 1 point

    Hydro Thunder Boats

    Banshee I am continuing the Hydro Thunder boat building. This time is Banshee. I didn't even intend to build this right away, but I was cleaning up some old bags of bricks, saw the kinds of green pieces I had, then started piecing together the air scoop that you can see on top. Thresher was going to be the next boat, so I had my blue pieces out already. Well, Banshee is better anyways. The boosters work too (see the spoiler images). This one took about six hours. For this updated version I improved the scoop, found black booster pieces, found better pieces for the front of the pontoons, and gave it a pop-out propeller.
  38. 1 point

    Tutorial: Everything About LRR Level Scripting

    EDIT: This version isn't the most up to date. For the most up to date version, visit the Knowledgebase: https://kb.rockraidersunited.com/Writing_NERP_Scripts It was moved over to there because it meant I could edit sections with ease, as opposed to having to edit the entire post. Wall of Text has awoken! I'd like to make this as a guide but I can't find the Create Guide button. Ah well, a forum post is not a problem! I've been working on this on and off for the past half-year or so, as the LRR scripter is really darn powerful but badly-documented. DDI did a very bad job with level design (especially slug scripts) - we can do so much more than GetCrystalsCurrentlyStored > 49 ? SetLevelCompleted ! The intention was to create a guide that explained to experienced programmers (even if they're only experienced in Scratch!) how to use the funky LRR scripting, and also guide new people who don't know a single programming language to be able to make something for their level. Oh, and if you have debug keys enabled you can hit F12 to disable the Nerps scripter (= this stuff) until you hit F12 again. A nice little NoNerps will pop up in the top left corner to let you know Nerps is disabled. Contents: 1. File Formatting 2. Basic Stuff 3. Toying with Timers 4. Toying with Variables 5. Labelling 6. Messaging 7. Fun Things! 7a. Basic Win/Loss 7b. Monster Invasions 7c. Slug Spam 8. Highlights from Karl's Interview Thread 9. More Research --- File Formatting --- TL;DR .nrn and .nrm files are plain text and compile to .npl, which is what LRR reads. If you poke around a Level folder, you will find two or three files of interest. something.nrm , something.nrn, something.npl . Usually they're all numbers. Like 04.nrm, 04.nrn, and 04.npl. The nrn and nrm files are totally equivalent (& you can open them in something like Notepad, for instance). They are the plain text of code. Using the fantastic tools available on RRU, you can turn these into .npl files. These are the code that LRR actually reads. It's no use just making a file though and hoping LRR will pick it up - you need to specify in the Levels section of the CFG the NerpsFile. This needs to point to the npl file. I haven't tried feeding it an nrm, but I don't think it'd go well. Nrm and nrn files have no need to exist, but it's useful to have them in the same folder as your compiled npl - mostly just so that if you want to tweak the script the 'source code' is right there and you don't have to bother with decompilation faff. --- Basic Stuff --- TL;DR The scripter loops when it finishes, everything must have CONDITION ? ACTION Firstly, commenting is done with ; . The compiler will ignore anything after that semicolon and go straight to the next one – so LRR couldn’t care less if it existed, as it will never see it in the .npl file. ; This is a comment and LRR really couldn’t care less that it existed Onto more interesting stuff. The basic syntax of any line (with two exceptions) is: CONDITION ? DOSOMETHING When the condition is met, something will happen. If not, the NERPs goes to the next line. A condition could be something obvious like GetOxygenLevel = 0 , or GetMonstersOnLevel = 0. Other operators you can use include > (bigger than), < (smaller than), and != (not equal to). You can use numbers, or another Get function for the other half of the condition. DoSomething could be something like SetLevelCompleted (you'll usually want that somewhere in your script!), setting variables with something like SetR0 10 (more on this later), sending messages with SetMessage 1 1 (also more on this later), spamming slugs with Generate Slugs (again, more on this later), All Get functions return numbers. GetSlugsOnLevel will just spit back a number that is the number of slugs on the level. GetPoweredDocksBuilt will spit back a number that is how many powered docks are on the level. And so on... A very basic slug script that you are welcome to use is GetSlugsOnLevel < GetMonstersOnLevel ? GenerateSlug which ensures that if there are no slugs and lots of monsters, the game will create slugs until the number of slugs is greater than (or equal to) the number of monsters. There are some quirks to this condition. Firstly, TRUE ? is a condition that will always execute. FALSE ? , obviously, will never execute and I can think of no reason why you’d use it. Here’s a useless example: TRUE ? SetLevelCompleted This is a hilariously useless script as it will immediately cause a victory. Most commands are written in a nice way. It's not too hard to guess that GetMonstersOnLevel returns a number that is the number of monsters on the level. The curious bit is whether it counts sleeping monsters (it does), bats (never checked but would go for "probably"), small monsters (don't think so if they're generated by a large monster death - placing them manually in the ObjectList.ol might have different results). And it's not hard to guess that GenerateSlug creates a slug - just one slug, it turns out. Things get more confusing with stuff like SetMessageTimerValues, SetCongregationAtTutorial (congregation of what? I think it's monsters. Does it include slugs? Bats?), and other obscure commands. Your best bet when researching new commands is to a) find an existing DDI script that has these and b) to play around repeatedly with a test map until you can get it to work. At this point it is well worth mentioning what happens when the scripter runs out of things to script. Unlike ‘proper’ programming languages, which will exit, this scripter just goes straight back to the beginning of the npl file. To illustrate, take a look at this script. This is all it contains. TRUE ? GenerateSlug This will not just generate one slug. No, it will generate infinite quantities of slugs. Every time it reaches the end of the script, it just goes back to the top again. And makes another slug. And finishes its script, goes back up to the top, and generates another slug. The scripter seems to like to run at a rate certainly higher than 1 per second. Estimates are on 25 runs per second, as that’s how long a ‘time unit’ is defined elsewhere in LRR (see the top of the Lego.cfg file; “times are 25 per second”). This has caused me infinite woes in my slug scripts. I start the level, only to be greeted by A SLIMY SLUG IS INVADING YOUR BASE and massive slowdown. Oddly LRR doesn’t crash when this happens, although sometimes it lags so badly I can’t even move the mouse to quit it. Also the scripter seems to ignore the game speed - it seems to run while the game is paused and still seems to run at the same rate if you are at 300% speed (which can be achieved with debug keys). Another quirk of the condition requirement, is, oh, say there are 0 monsters on a level and 1 slug on the level when the scripter is running for this tick. GetMonstersOnLevel ? DoSomething1 GetSlugsOnLevel ? DoSomething2 The scripter sees “GetMonstersOnLevel” as 0. As far as the scripter is concerned, this means FALSE. So DoSomething1 will not execute. GetSlugsOnLevel, on the other hand, is 1; and so DoSomething2 WILL happen. (DoSomething1 and DoSomething2 would need to be proper commands, of course). You can use this to save a little space, but it’s really not necessary and for the sake of legibility I would highly recommend you write GetMonstersOnLevel = 1 ? DoSomething1. It’s twice as easy to understand. An exception is GetTutorialBlockIsGround, which looks confusing if written as GetTutorialBlockIsGround 2 = 1 ? and would probably be more legible as GetTutorialBlocksIsGround 2 ? DoSomething. They’re still functionally equivalent. I mentioned two exceptions to this CONDITION ? DOSOMETHING rule. These are the only two lines that do not need a condition. Stop - stops the scripter and loops it all the way up to the top of the script. You can write TRUE ? Stop if you want. You absolutely must write TRUE ? Stop . I don't know where I got the idea you could write Stop on its own, but it does not work. Stop is an incredibly useful line when it comes to labels, but it by no means quits the game! Label: - I will talk about labels a little later. This says “The top of the label is here!” However if you want LRR to always go to a label, you will need TRUE ? :Label (more on this later). Strictly speaking, comments are a third line that doesn’t need a condition… but they don’t do anything anyway. Also, LRR has no AND function. It doesn’t have an OR either. Or XOR. Or NAND. It’s only got < , > , = , and != . We can make an impromptu AND function by using labels or using a variable – more on this later. Toying with Timers TL;DR Timers are in milliseconds. And they don’t reset on level restart. We’ve got four timers to play around with. We can get their value using GetTimer0 (or GetTimer1, or GetTimer2, or GetTimer3). Maybe you want a condition to execute after ten seconds have elapsed, so you might write something like this: GetTimer1 > 10 ? GenerateSlug Unfortunately, timers are in milliseconds, so that will take 0.010 seconds before the game starts spamming you with slugs – because timers don’t automatically reset when you do something. Let’s modify that script a bit in light of that: GetTimer1 > 10000 ? GenerateSlug GetTimer1 > 10000 ? SetTimer1 0 This will wait 10000 milliseconds ( = ten seconds) before generating a slug and resetting the timer. Timers have a limit of 32000 ish (haven't bothered to nail it down but my guess would be 32768 = 215 ; powers of 2 are terribly important in computing) – in that if you put bigger numbers in, like GetTimer1 > 33000 ? GenerateSlug the compiler will refuse to compile and will start working again when you reduce the number. This might mean you have a maximum of thirty seconds… but you can use a register to count the number of times thirty seconds has ticked over. More on this down below! The TL;DR mentioned that timers are not reset on restart. Registers (see below) are, but timers are not. This usually isn’t a pain, but if you have a monster or slug spam coming in thirty seconds since they start the level, you can get silly results happening if you restart the level. There is however a fortunate way around this and that is the very useful function GetObjectiveShowing. This should do all you need: GetObjectiveShowing = 1 ? SetTimer0 0 GetObjectiveShowing = 1 ? SetTimer1 0 GetObjectiveShowing = 1 ? SetTimer2 0 GetObjectiveShowing = 1 ? SetTimer3 0 This may and probably will break if you open the objective mid-game, but really, who does that? Another annoying quirk of timers is that they start counting the moment you load the level – even when Chief is still speaking to you. Fortunately, the above script will also handle this, and just reset the timers every time the objective is showing. I find it hard to find a use for timers. I’m much better with… Toying with Variables TL;DR You should be using these. A lot. They're integers. Variables are half the fun of programming in general, and I certainly would have a great deal more difficulty were they not there. We have eight ‘registers’ (integer variables that can store 0 -> 32000… I think. They might happily store negative values, but I'm unsure why you might want that anyway). We can find their value by using things like GetR3. We can add things to them by writing AddR1 5, or subtraction using SubR5 3. No, there’s no multiplication or division. A line of a bigger script might look like: GetR1 < 0 ? SubR1 1 If R1 is bigger than zero, take away 1 from R1. (I have actually used this line somewhere… it does have its uses!) All variables (not timers!) are set to 0 on level start or restart. You don’t need to manually reset them – and if you say something like TRUE ? SetR1 0 ; rest of script then because the NERPs scripter likes to just go back to the beginning when it runs out of things to do, R1 will be permanently set to 0 and you’ll get nothing useful (unless that’s what you wanted.) If you wanted something to run at the beginning of the game, it’s probably just best to use a variable to keep track of it. I say 'probably' because I am yet to toy with this myself. Research awaits! GetR0 = 0 ? SetDocksLevel 1 GetR0 = 0 ? SetR1 1 This will set the Docks to level 1, then set R1 to 1 such that those two lines will never trigger again. (I thiink.... haven't actually tested this!) An even better way would be to use GetObjectiveShowing = 1 ? SetPowerStationLevel1, although this may cause shenanigans if the player clicks on “Display Objective” midway through the game. (Though who does that? Once you’ve got your crystal count you’re good to go!). Why is it better? Because we have a maximium of eight registers (this and 4 timers are our only limits) and thus if we can not use a register in favour of anything else we can use that register somewhere else. I mentioned registers could be used as essentially AND blocks. This is a classic bit of DDI code: TRUE ? SetR1 0 GetMinifiguresOnLevel = 0 ? AddR1 1 GetToolStoresBuilt = 0 ? AddR1 1 GetR1 = 2 ? SetLevelFail It’s vital to reset R1 to 0, or else it will just be continually incremented every time it runs – causing you to fail the level if you have no raiders on the level but you still have a Tool Store. You could also use this is as OR, by saying GetR1 > 0 ? DOSOMETHING or an NAND, by saying GetR1 < 2 ? DOSOMETHINGELSE A XOR is probably doable with this setup as well, but I haven't bothered looking into it simply because I haven't had a use for it yet in my scripts. It might be GetR1 = 1 .... perhaps? I mentioned you could combine a timer with a register to record even longer times. Take a look at this: GetTimer1 > 30000 ? AddR1 1 GetTimer1 > 30000 ? SetTimer1 0 GetR1 < 4 ? Stop ; do interesting things, preferably involving this line: TRUE ? SetR1 0 So when Timer1 reaches 30000, it will add 1 to R1 and then reset itself. When it’s done this four times (120s => two minutes), it will no longer execute the Stop and will now start doing interesting things! Preferably reset R1 to 0 somewhere in there, or else it’ll just execute immediately afterwards later. Labelling TL;DR Labels are like bookmarks. “Go to here.” Labels, combined with variables, allow you to do lots of fun things. Remember how those slug scripts would just infinitely generate slugs and lag your game to bits (try it out!). Well, there’s a way to make interesting slug scripts (or anything!) and that is labels. A label is not quite as advanced as a loop in other programming languages. They’re the good ol’ GOTO function. They’re ways for you to tell the NERPS “Jump execution to here.” When the label finishes, the scripter will not go back to where it was told to go to that label. No, it’ll just continue onwards. If it hits the end of the script, it’ll go back up. If it bumps into a new label, it’ll just keep on going. As an analogy, labels are like bookmarks. You can say “Go to the bookmark called STUFF.” The scripter then goes over to STUFF and continues reading the book from there. If it finds another bookmark on its way through the book, it’ll ignore it and just keep reading. Why did I bother with a duplicate explanation with this analogy? Because the ‘bookmark’ analogy explains a lot of the silly stuff that labels do… Remember how I said that labels didn’t need a CONDITION ? in front of them? Well, that’s only half true. Defining labels needs no condition, but going to labels needs one. Labels are defined with a colon in front of them, like LABEL: and to go to a label, you use CONDITION ? :LABEL If you were to write only :LABEL the game will entirely ignore that and proceed to the next line. Here’s a silly example: GetOxygenLevel < 10 :YourO2IsLow Stop Continue: TRUE ? GenerateSlug Stop YourO2IsLow: TRUE ? GenerateSlug TRUE ? :Continue Stop While this might seem silly and basic (because it is), I have used this kind of syntax before. I'll go through several interesting things about labels here. Firstly, going to labels, like anything else, needs a condition. If you want it to go to another label all the time, you still need a condition; condition TRUE ? . Secondly, there’s a Stop up the top. This is because I don’t want Continue: nor YourO2IsLow: to run every single time. A Stop ensures that those don’t run by accident. (Stop is the other statement that requires no CONDITION ? in order to run). Thirdly, you’ll notice that labels can be in any order; just like bookmarks. “Jump to this bookmark, skipping over this other bookmark on your way through.” Fourthly, if you have a keen eye for how the NPL scripter works, you’ll notice that as soon as your oxygen level gets less than 10 you will be spammed with two slugs every frame. Another useful note is that while you only have eight registers to play around with, you can have as many labels as you like. Instead of that useless example, here is a label being used properly. This is an extract from Time Raiders, whereby you can generate Ore by building Docks. GetTimer1 < 10000 ? :Skip TRUE ? SetTimer1 0 TRUE ? AddStoredOre GetPoweredDocksOnLevel Skip: ; rest of script If Timer 1 is smaller than 10,000 -> ten seconds, I tell the scripter to go to Skip. So it ignores all that stuff. When Timer1 gets bigger than 10000, the action of going to Skip will no longer happen. So it continues as normal. It resets the timer and adds some Ore. On the next run, the timer has just been reset and is probably something puny, like 5 milliseconds. So it goes to Skip again. (Curiously this script generates two ore per powered dock per ten seconds. :S) You could have used no labels and written something like this as well: GetTimer1 > 10000 ? AddStoredOre GetPoweredDocksOnLevel GetTimer1 > 10000 ? SetTimer1 0 Perfectly valid! Let’s take a look at a classic DDI script that turns up everywhere: TRUE ? SetR1 0 GetMinifiguresOnLevel = 0 ? AddR1 1 GetToolStoresBuilt = 0 ? AddR1 1 GetR1 = 2 ? SetLevelFail If you’re out of raiders, and lost your tool store and can’t teleport any more down, you’ve obviously failed the level. (Yes, even if you have a powered Teleport Pad; you won’t be able to teleport raiders down as the Tool Store is a ‘dependency’ for teleporting a Rock Raider). This script is pretty good, but it has the disadvantage that it uses a register and it would be nice not to use up one of those. So we could rewrite it using labels: ; rest of script GetMinifiguresOnLevel = 0 ? :CheckForFailure ; preferably as little code here as possible Stop CheckForFailure: GetToolStoresBuilt = 0 ? SetLevelFail The way this script runs should be obvious. If no raiders, it’ll execute the other check for failure. If no toolstores, it'll then fail the level. Don't forget that Stop! I’ve mentioned that there should be as little code as possible below the GetMinifiguresOnLevel = 0 ? :CheckForFailure. It’s not much of a problem in this example, but if that condition is activating a lot of the time then it will always be jumping to that label – and never executing the code below it. Fortunately there is a sensible way around this! And it involves… more labels. ; rest of script GetMinifiguresOnLevel = 0 ? :CheckForFailure Continue: ; some more code Stop CheckForFailure: GetToolStoresBuilt = 0 ? SetLevelFail TRUE ? :Continue This time, if you have no minifigures but a Tool Store or two, the scripter will hop back up to Continue. It is vitally important that that TRUE ? is there, as that was causing me a load of headaches with one of my more massive scripts. Yet another way of writing this would be using labels to skip code. This happens a lot in DDI scripts with confusing names liked SkippedSkip. DDI levels are terribly written and you can all do much better than they do, even if you have no programming knowledge at all. Anyway, a Skip example. Providing you always have raiders on the level, it’ll always skip the next check for failure. GetMinifiguresOnLevel != 0 :Skip GetToolStoresBuilt = 0 ? SetLevelFail Skip: Much condensed, but the condition now being if you are NOT going to fail the level, do something can bend your head a bit. Either way, it's a nice way to save a variable! There seems to be no limit on the number of labels you can use, whereas you're clearly restricted to eight registers.... thus saving a register in favour of even ten labels can be worthwhile! Messaging TL;DR SetMessage NUM 1 and don't forget SetMessagePermit 0 You know how TRUE ? GenerateSlug will spam you with slugs? Can you guess what TRUE? SetMessage 1 1 will do? The answer is not spam messages. No, Chief will happily speak message 1 and then stop talking. The text will be there for eternity down the bottom, overwriting the An Energy Crystal Has Been Found / Ore Has Been Found / A Unit Has Been Upgraded but really who cares about those? (Don't worry - we'll find a way to banish the text in a little while!) SetMessage has two numbers after it! Ooooh! This really shouldn't scare you at all as it needs to know two things. It's much easiest to explain the second number. If it is 0, a little "Next" arrow will appear like it does in the tutorials. I don't know how to make use of this arrow - if you want to research it, check out what the tutorial levels do. If it's 1, don't display an arrow. The first number is the message number. This points to the message file. In a level's directory you'll probably find something like 04.txt (in addition to 04.nrm, 04.nrn, 04.npl, and 04.ol ...). This is the text for all the messages and where to find the sound file. In the Levels section of Lego.cfg, you point to this message file with NerpsMessageFile PATHTOFILE\filename.txt. Here's the content of Driller Night's 01.txt: \[You need four more Energy Crystals...\] #one# \[You have stored two Energy Crystals now.\] #two# \[Another Energy Crystal stored. You're more than half way there!\] #three# \[Only one more Energy Crystal to go now...\] #four# \[Congratulations! You've stored five Energy Crystals.\] #five# \[Well done, you've found the tool store! Now collect five Energy Crystals...\] #six# $one sounds\Streamed\InGame\ins201 $two sounds\Streamed\InGame\ins102 $three sounds\Streamed\InGame\ins103 $four sounds\Streamed\InGame\ins104 $five sounds\Streamed\InGame\ins105 $six sounds\Streamed\InGame\ins106 Their formatting is obscure, but follow it and you'll be good to go! I'm not sure what all those square brackets and slashes do. It seems like you can remove them and be fine in your own custom level. Yet these slashes and brackets never show up in the vanilla LRR levels.... hmm. So TRUE? SetMessage 2 1 will send message 2 - here in Driller Night that's "You have stored two energy crystals now." The 1 says "Don't display an arrow." Chief will hang down from the screen providing he's not already onscreen from the level objective - this is why Frozen Frenzy's "Build up your base and make sure it's heavily defended" does not have Chief coming down, whereas Rocky Horror's "Build up base defenses and transport powerful mining vehicles" does. When he's finished his sound file and stopped speaking, he'll head back offscreen again. There seems to be no SetChiefFromRightSide or SetChiefGoAway command that I know of, and everything's handled automatically. In this example, one thing that won't go away - the sound and Chief will - is the text at the bottom. For this we need to know about this next command: TRUE? SetMessagePermit NUM where NUM is either 0 or 1. I've been quietly lying to you in saying that SetMessage 2 1 will do all these things. It's true that it will, but not off the bat in a script. This is because the default for messages is to block them and prevent them from coming through. You need to write TRUE? SetMessagePermit 0 and then your messages will work. Oddly 0 => allow messages, 1 => disallow messages. This not only blocks Chief and the sound file, but it also blocks the text - or more accurately, clears the text. (I don't know what happens if you send a message, block messages, and then reallow them again. Will you get the same text pop up? I don't think you do, and I haven't waded through this because I can't see an immediate use for it). I'm also not sure if the default for messages is to block them. I always SetMessagePermit 0 just before I send a message anyway because MessagePermit might not be reset on level restart, stupid things might start happening, and if I set it to 0 then I know my messages should be coming through, so if they aren't and I'm trying to debug it I at least know that's not the issue. You can’t seem to say concisely “Display message 1 and six seconds later go away.” Instead you have to say “Allow messages. Display message 1. Wait for six seconds. Then block messages.” (That's what I've found. There are some commands the DDI scripts use I can't get to work)... If you take a look at the tutorial levels (which for a change are scripted sensibly) you’ll find a register is typically used as “where-am-I-when-it-comes-to-messaging.” This seems like a fairly effective use of a register, so I've used one here: GetObjectiveShowing = 1 ? SetTimer1 0 GetObjectiveShowing = 1 ? Stop ; If objective is showing reset the timer and stop ; This is our "Where are we and what do we need to do? GetR1 = 0 ? :WaitForFirst GetR2 = 1 ? :ShutUpSixSecondsLater GetR1 = 2 ? :SecondMessage GetR1 = 3 ? :ShutUpSixSecondsLater GetR1 = 4 ? Stop WaitForFirst: GetTimer1 < 10000 ? Stop ; If ten seconds have NOT passed, stop. ; If they have, send our first message. TRUE ? SetMessagePermit 0 ; allow messages TRUE ? SetMessage 1 1 ; send message 1 TRUE ? AddR1 1 ; change our counter of where we are TRUE ? SetTimer1 0 ; and start another timer which will come in handy Stop ; that Stop is terribly important! ShutUpSixSecondsLater: GetTimer1 < 6000 ? Stop ; Again, if six seconds haven’t passed, stop. ; But if they have… TRUE ? SetMessagePermit 1 ; block messages TRUE ? AddR1 1 ; increment our counter TRUE ? SetTimer1 0 ; reset the timer Stop SecondMessage: GetTimer1 < 20000 ? Stop ; again, if twenty seconds have not yet passed, stop. TRUE ? SetMessagePermit 0 TRUE ? SetMessage 2 1 ; send message 2 TRUE ? AddR1 1 TRUE ? SetTimer 1 0 ; hopefully that’s all explanatory! I hope it's explanatory. I send a message, then block messages to clear the text six seconds later. Then I send another message (re-allowing messages again), then can call the same shut up function again. You would have to call a different one if you wanted the text to go away twenty seconds later, but if you want the same delay you may as well re-use your little label! A nasty disadvantage of this script is that it only allows linear messaging. Say you want a message when you’ve build a Small Digger, and also a message when you’ve collected five Energy Crystals. If you were to use this script, there’s no neat way of allowing either message to happen first. You’d need separate variables to keep track of which one occurred – or alternatively you could use the fact that if one happened you know which one will happen next. It would be tricky to do that with a single variable, but doable - hence "no neat way." Also, If you display a wall of text because your line in 01.txt was so long, the box will automatically jump up to make room for all the text (like the tutorial missions). Great stuff! Unfortunately it won’t jump back down to size again when you SetMessagePermit 1. It will jump back to size when Jet comes up, Energy Crystal in hand, or you can forcefully reset its size by creating a blank message that points to a silent file (I don’t know what happens if you point it to a file that doesn’t exist….) and then disabling messaging after that. That’s…. really all there is to messaging that I know of. There are definitely more functions. SetMessageTimerValues does something, but I have no clue what it does. AdvanceMessage presumably does something. GetMessageTimer probably has something to do with SetMessageTimerValues, but I can’t work out how to use it. And more… but I can do all I want with just those functions I've outlined above. I do need a variable and a timer – perhaps those functions will allow me to not do this? Or perhaps those functions can do even more than what we see in DDI's levels? Fun Things! TL;DR Whatever you want, there's a function for it. Basic Win/Loss Conditions TL;DR GetCrystalsCurrentlyStored > Objective-1 ? SetLevelCompleted The original scripts DDI made are extremely complicated. Take a look at Ice Spy, for instance. Loads of faff and the entire script could be condensed to 1 line as: GetCrystalsCurrentlyStored > 24 ? SetLevelCompleted Firstly, notice the two commands: GetCrystalsCurrentlyStored and SetLevelCompleted. Can you guess what they do? Correct! The first gets a number that is your crystals that are currently stored, and the second starts the victory teleport-out stuff (unless you said DisableEndTeleport TRUE in the Levels section of the cfg). Secondly, Ice Spy has a victory when you have 25 crystals...That's not quite true. Suppose you were on 23 crystals and a Small Transport Truck unloaded 3 crystals into the Power Station. This would give you 26 crystals. If you had written GetCrystalsCurrentlyStored = 25 ? SetLevelCompleted then you never actually had exactly twenty-five crystals and so you wouldn't actually complete the level. This is why a greater than 24 condition is used. On 23 crystals two upgraded STTs somehow manage to dump six crystals each into a Power Station at the same time, yielding 35 crystals in total? No problem, it's greater than 24, and so you win! Curiously you don’t even need the oxygen counter for failure – if the oxygen level reaches 0 the game will quit anyway. Similarly you also don’t need a check for failure if tool stores and raiders - if you have absolutely nothing (including no power paths) the game will fail you of its own accord. That is a very basic win condition and by far the bulk of vanilla levels. If you’re feeling imaginative you could have a requirement that it is ore you must collect. Or find the rock raiders in cavern X, or destroy all monsters, or…. well take a look at Don't Panic for NERPS scripting done well. I don’t understand a lot of things here. I’m not sure on how the “bring object here” script works. But there are some commands that I know how to work very well. These are: GenerateSlug SetRockMonsterAtTutorial X GetTutoBlockIsGround X GenerateSlug needs nothing after it. Bam, one slug spawned. If there's no hole the game will be fine. If there's no hole and you've stuck it in a loop trying to create slugs and only exiting the loop when slugs are created the game will not be fine. It will freeze; it won't even crash nicely. TRUE ? GenerateSlug will work just fine. (And spam you if it's in the body of the script and not tucked away inside a label, as I’ve covered above) SetRockMonsterAtTutorial requires a NUMBER after it that corresponds to the number in Tuto.map. It makes the default emerge monster (which is not always Rock Monsters! It’s specified in Lego.cfg in whatever level you have. You can even have EmergeCreature Slug and create slugs that way!) appear at all the blocks of that number in Tuto.map. This is unlike the Emrg.map, whereby running over a trigger only makes one monster even if there are loads of walls which are labelled as emerges. This is by far the best way to make a horde of monsters attack the player. The other method is to have an EmergeTimeout of 0.0, which has its own problems – the horde never stops until the wall is drilled or reinforced. And if the trigger is in a spot where raiders will frequently run over.... yeah that's no fun to deal with. So SetRockMonsterAtTutorial 1 would work. Or SetRockMonsterAtTutorial GetR1 . Or SetRockMonsterAtTutorial GetPoweredDocksOnLevel (no clue why you’d want this, but it’d work!) Don’t forget you need the condition! GetTutoBlockIsGround also requires a NUMBER after it, like GetTutoBlockIsGround 1 ? SetRockMonsterAtTutorial 2. It’s quite explanatory: if Tutorial Block 1 is ground (as opposed to wall or ‘undiscovered cavern,’ then do something else. In this case, make Rock Monsters at tutorial block 2. Unfortunately, as you should notice, if you just leave this block lying in the middle of nowhere monsters will perpetually spam the player out of tutorial block 2. This is where labels and registers start coming into play! Monster Invasions Take a look at this… GetTutoBlockIsGround 1 ? :CheckForInvasion Stop CheckForInvasion: GetR1 = 0 ? :Invasion Stop Invasion: TRUE ? SetRockMonsterAtTutorial 2 TRUE ? GenerateSlug TRUE ? GenerateSlug TRUE ? GenerateSlug TRUE ? SetR1 1 Stop When tutorial block 1 turns to ground – because I placed it in the middle of an undiscovered cavern – if R1 is 0 (which it will be at start!), make a bunch of monsters at tutorial block 2 and make three slugs. But then set R1 to 1. Then, when the NERPs scripter comes back again, tutoblock 1 is still ground and that will trigger. However, R1 is now 1 and so the invasion will not trigger again. Great stuff! This is a useful way of making once-off invasions. There is a disadvantage that all the monsters will spawn at once, making it extremely convoluted and ‘look’ scripted, as opposed to a random monster invasion. While I could play around, I’m limited with my number of tutorial blocks and registers. (Actually, I might not be limited with tutorial blocks… Cyrem’s limit of 20 is solely self-imposed. I need to see if I can change this with a nice hex editor…) But we are limited for registers (or are we? see Future Research down below!) Alternatively, the trigger could be GetCrystalsCurrentlyStored > 19 ? However, if the player’s drilled all the walls (or reinforced them all) before getting those crystals, the monsters won’t spawn, which is unfortunate. As I’ve commented earlier in the Labels section, this needs some more faff in order for a whole bunch of invasions to run. An example you’re welcome to use is this: GetR1 = 0 ? :Spot1OtherCheck ; Has the invasion NOT happened yet? Run the other check ----> Continue1: ; now since the first invasion hasn't occurred, check for the next one! GetR2 = 0 ? :Spot2OtherCheck Continue2: GetR3 = 0 ? :Spot3OtherCheck Continue3: GetR4 = 0 ? :Spot4OtherCheck Continue4: GetR5 = 0 ? :Spot5OtherCheck Continue5: GetR6 = 0 ? :Spot6OtherCheck Continue6: stop ; highly neccessary! Spot1OtherCheck: GetTutorialBlockIsGround 1 ? :Spot1 ; Is the cavern discovered that we want to summon the monsters in? If so, go ahead and make them ---> ; but if that isn't, nothing happens ; and the next line tells it to go back up to Continue1 TRUE ? :Continue1 Spot2OtherCheck: GetTutorialBlockIsGround 3 ? :Spot2 TRUE ? :Continue2 Spot3OtherCheck: GetTutorialBlockIsGround 5 ? :Spot3 TRUE ? :Continue3 Spot4OtherCheck: GetTutorialBlockIsGround 7 ? :Spot4 TRUE ? :Continue4 Spot5OtherCheck: GetTutorialBlockIsGround 9 ? :Spot5 TRUE ? :Continue5 Spot6OtherCheck: GetTutorialBlockIsGround 11 ? :Spot6 TRUE ? :Continue6 Stop Spot1: ; Invasion 1 - when 1 is down, generate RMs at 2 TRUE ? SetRockMonsterAtTutorial 2 TRUE ? AddR1 1 ; and make sure that the invasion 1 never triggers again Stop Spot2: TRUE ? SetRockMonsterAtTutorial 4 TRUE ? SetR2 1 Stop Spot3: TRUE ? SetRockMonsterAtTutorial 6 TRUE ? SetR3 1 Stop Spot4: TRUE ? SetRockMonsterAtTutorial 8 TRUE ? SetR4 1 Stop Spot5: TRUE ? SetRockMonsterAtTutorial 10 TRUE ? SetR5 1 Stop Spot6: TRUE ? SetRockMonsterAtTutorial 12 TRUE ? SetR6 1 Stop Unfortunately, you may notice that I’ve used up seven registers… one for each invasion. Still, registers are there to be used, and I don’t need them for anything else. Slug Spam TL;DR DDI screwed up their slugs scripts hard and you can do waaaaay better than that. DDI’s slug scripts are awful. Atrociously bad. They will endlessly spawn slugs. If one dies, another one will rise to take its place. Back to Basics is an unneeded exercise in AI abuse. Spoiler My favourite slug script for simplicity is this. GetMonstersOnLevel > GetSlugsOnLevel ? GenerateSlug It makes the number of slugs equal to the number of (non-slug) monsters (including sleeping ones!). This ensures you never have to keep Action Stations on, that you will never be barraged with slug spam, and that killing the slugs (after you’ve killed the monsters) actually makes a difference. For more complex scripts, a couple of commands become useful: GetRandom10 and GetRandom 100. DDI had another slug script hiding in their files which only ever shows up in-game in Rock Hard and it is basically this: TRUE ? SetR1 0 ; reset R1 GetRandom100 = 1 ? AddR1 1 GetSlugsOnLevel = 0 ? AddR1 1 GetR1 = 2 ? GenerateSlug (There was also a requirement for more than 8 minifigures, but that’s easily met). Play Rock Hard and notice how frequently the slugs come…. despite it being a 1 in 100 chance. The NERPS scripter runs waaaaay too fast. If you wanted a 1 in 500 chance, that’d be a 2 in 1000, and you could write GetRandom100 < 3 ? AddR1 1 GetRandom10 = 1 ? AddR1 1 GetSlugsOnLevel = 0 ? AddR1 1 GetR1 = 3 ? GenerateSlug You could also remove the line about GetSlugsOnLevel (don’t forget to lower GetR1 = X or else it’ll never be reached!) if you wanted more than one slug. As a much more detailed example, take a look at this... TRUE ? SetR7 0 ; resets R7 TRUE ? AddR7 GetRandom100 TRUE ? AddR7 GetRandom100 GetCrystalsCurrentlyStored < GetR7 ? :SkipSlugs ; I want this to happen more frequently later --> when crystal count is high ; so skip it when crystals are low ; Now re-use R7 as “how many slugs to spam” count. TRUE ? SetR7 0 TRUE ? SetR7 GetRandom10 TRUE ? SetR7 GetRandom10 Sluggies: GetR7 < GetSlugsOnLevel ? :SkipMakingSlugs ; usual skip shenaningans TRUE ? SubR7 1 TRUE ? GenerateSlug TRUE ? :Sluggies ; This is a loop made the hard way… SkipMakingSlugs: SkipSlugs: SkipAllSlugs: ; yeah that label use really isn’t efficient Not only is there a random chance of slugs appearing, the random chance goes up with crystal count, and you get more than 1 slug at a time! Waaay better than Back to Basic's slug spam! All from constructing simple commands, some register shenanigans, and a health dose of labels. There are a couple of notes that will prevent you from pasting this in any script you like. Firstly, notice the loop. If there are no slug holes, and thus GetSlugsOnLevel will always be 0, the game will be stuck in that loop generating slugs to no avail. This will cause the game to freeze (the NERPs scripter seems to control advancing a frame... it's not just level completion!) But never fear, there’s a way around this. Put tutorial block 1 in all the caverns that have slug holes in them. Then say up the top of the script GetTutorialBlockIsGround 1 = 0 ? :SkipAllSlugs An odd use of GetTutorialBlockIsGround, but it does work this way. If none of 1 have been drilled, skip all slugs. As soon as 1 becomes Ground as opposed to Undiscovered Cavern, the slug script will now start. (I don't know if GetTutorialBlockIsGround 1 = 2 ? :Stuff will work when two of tutorial block 1 have been drilled. Give it a whirl!) A second note is that if your crystal count is about 200, then as you get very high the chance of GetRandom100 + GetRandom 100 being bigger than your crystal count is basically zilch. This means that you will get slugs really really really really really frequently. As in once every four frames. As in “lag-your-game” quantity of slugs. There’s a simple way around this and that is the addition of more TRUE ? AddR7 GetRandom100 lines. This does mean that slugs earlier are rarer. But perhaps you could write something like… TRUE ? AddR7 GetRandom100 GetCrystalsCurrentlyStored > 40 ? AddR7 GetRandom100 GetCrystalsCurrentlyStored > 80 ? AddR7 GetRandom100 GetCrystalsCurrentlyStored > 100 ? AddR7 GetRandom100 and then continue with the script as normal. That would be interesting, but I’ve yet to test it like this. Give it a whirl! ASK KARL ANYTHING For those not in the know, an RRU developer came over to the site and answered a lot of questions. It's still worth a read. Here are some things that particularly relate to NERPS scripting: however this statement was perhaps nullified by implying the script does in fact run 25 times a second this explains why slugs only come in later despite being in those early cutscenes and whilst we're on the subject of NERPS and totally off topic but FUTURE RESEARCH TL;DR This is only the beginning! There's much more to be done! I don’t know everything about NPL scripting. I’d like to think I know a lot, and I know a lot more than the standard GetCrystalsCurrentlyStored > 49 ? SetLevelCompleted . Other avenues I don’t understand: - Bring Object To X . Take a look at Explosive Action’s script. As far as I understand, you tell the game to record the object on tutorial block such-and-such and then when it reaches tutorial block such-and-such you do things. However, according to unconfirmed any object present in the Object List file (it ends in .ol and there’s one for each level) will trigger the victory? Is there any way to say “If the Small Digger runs over this tile, do something, but if a Small Truck runs over this tile, don’t do something?” This is just future research. - More messages. I’ve gotten them to work (huzzah!) but I don’t know how to use all the other functions. Do I even need them? Will they do ultra-special things? How do I even get them to work? - Initial setup of building levels. As you will have noticed in Rocky Horror, you conveniently get given all the upgrades required to build a Support Station off the bat. (Why they give you a Geological Center is beyond me. It’d be loads more helpful to give me a Support Station!) Poke around those scripts and you’ll spot some useful commands, but there’s a lot that I don’t understand. What happens if you have two Support Stations and you try levelling up. What happens if the Support Station is Level 2 and you level it down? Can you specify levels in the object list? - SetTutorialBlockIsGround X. As far as I understand, this destroys a wall – even Solid Rock – allowing you to send hitherto undetected erosion their way (good job alan! That map was Neuroticism Simulator 101), open a new cavern which you promptly flood them with monsters in, or simulate a landslide. However I have not yet gotten round to researching it. Experiment! - Functions. Decompile a NPL with the provided decompiler and the output, though recognisably the same, looks nothing like the .nrm you usually write up. Does this have something to do with the curly braces {} that occasionally appear in the original LRR scripts? And what is the backslash doing in those scripts? A line break, or something more? - Register usage. I like to use them as booleans. But they are integers. Surely I could store two boolean values by using two digits ; 11 (both on), 10 (one on one off), 01 (one off one on), 00 (both off?) Surely I could store up to fifteen booleans in a single register which goes up to 32000 if I bother to go through binary faff? Scripts for these would be complex but doable, and greatly extend our eight register limit if all we need are booleans! Lastly, this guide would never have been possible without @Cyrem's fantastic NPL scripting tool, his fantastic Map Creator, and his fantastic forum he continually maintains. EDIT1: fixed minor typos and formatting shenanigans EDIT2: fixed some more typos (that was three slugs not five, something got lost in transit) and rewrote a nice section of Messages to be more logical and flowing EDIT3: very minor changes
  39. 1 point

    Idleness Syndrome: What is the Root Cause?

    TL;DR Read the paragraph below the flashy lights. The rest is just explanation and comments This is... what.... sixtuple posting? Oh well. But: I now have a theory for what causes Idleness Syndrome! My theory is that each frame the pathfinding algorithm tries to make a path for absolutely every conceivable task that needs to be done on the map (as we know "move to X" is a different task to "pick up X;" that in itself explains a lot of things) However, if this takes too long due to too many RRs or too many pieces of ore on the map, the game can't complete all the pathfinding before the next frame occurs and it has to start over again. Which it will never finish. Etcetera... This explains: - why Idleness Syndrome only affects some RRs (the algorithm can complete everything for some RRs but not others before it has to restart) - why it is more frequent with resources on map and raider count - why it goes up with map size (=> more the pathfinding algorithm has to crunch through) - the relation between the NERPs, framerate, and the game - why if there is nothing to do and something becomes available, LRRs will immediately run off quite literally the frame it becomes available; it makes sense that the game checks for tasks to do every frame - why the things we do to reduce Idleness Syndrome work (less raiders / less resources / smaller map size) This does not explain: - why vehicles are unaffected (however as evidence by Disappearing Raiders, vehicles are clearly something different...) - Separation Anxiety, which is a less severe form of Idleness Syndrome that occurs when you have two bases crossed by an inaccessible rift (eg Fire 'n' Water, if you don't teleport up your base on the first side before building a second) - lag that occurs due to pathfinding reported previously in this thread (but keep in mind this is very rare) This may be a bad idea because: - one would think the game would wait for the pathfinding and task assignment algorithm to finish before advancing to the next frame - one would think the pathfinding algorithm would only generate a path for the first raider to do the first task, second raider to do the second task, third raider to do the third task, etcetera; as opposed to all paths for the first raider, all paths for the second raider, all paths for the third raider This may be a good idea because: - the game clearly has no "do close tasks" prioritization but it is possible that attempts at implementing this were made; the only way to know which is the closest task is to check the distance for all the tasks and check, which requires generating paths for all tasks; the distance check clearly isn't implemented but we know that the last 72 hours of development were spent between the devs and the QA team; the QA team would find a game-breaking bug and the devs would fix it, rinse and repeat for 72 hours before launch; so it's probable to me that something like the lack of a distance check just got put by the wayside
  40. 1 point

    How To Edit A Game Level Without Restarting Rock Raiders

    First start up Lego rock raiders and then select the level of your choice i chose rubble trouble now open up map creator and import what ever level you chose now edit the level the surf dug cry ore objects be careful with objects however yes i have edited it now restart the level wow did you see that cool huh this will save you a lot of time great if yore testing out new maps and overhaul's enjoy sometime the surf map will glitch so if that dose happen quit the level delete the surf map and rename it to the same name to fix that. enjoy
  41. 1 point

    Project Island - a LEGO Island fan-made sequel

    it'll be bigger than Fortnite and middle schoolers everywhere will learn to skate
  42. 1 point
    lol username

    LR2 Installtion not enough memory

    Try running the installer in compatibility mode.
  43. 1 point

    Project Island - a LEGO Island fan-made sequel

    No offense but that just sounds like the first game without the other characters, but told in like one of those back-of-the-box descriptions to get kids interested without really describing the gameplay and story at all. Like, what is the exact gameplay style(s)? How long is this intended to be? If there's minigames like in the originals what's the plan with that? Are the other characters from the first game playable? Are there going to be multiple worlds like 2 or just on one main map like Island and Xtreme? What's the plot, if there is a single over-arcing one, or an unlockable one/more open-ended like in the original, or what? Well I mean. I'd just like to see some kind of concept, anything besides fancy pre-rendered stuff this early in development that doesn't really tell me anything about anything besides that you can render short animated videos. After the CEO of DDI himself spent five years talking about his Rock Raiders sequel plans without really getting much of anywhere, I'm just a little skeptical. Most of the projects I ever see go anywhere start off with the dev(s) just showing random stuff off and continuing to do so as they make progress - even when there's ones that need help or funding they usually have something to show off as an example of what the full thing is gonna be like (aside from the scam ones of course). I don't really know how to describe what I'm talking about that's going on here that I'm wary of, just not really sure there's a whole lot of solid game idea here besides "lego island 4". That doesn't do anything to answer my question. I just wanna know like, are you gonna be hiring professional VAs to emulate the acting in the original game, or just half-assing it?
  44. 1 point

    Global Forum Rules

    Rock Raiders United is a discussion community. This allows many people of many backgrounds to come together to discuss all things LEGO. To keep this community in a healthy working order, forum rules do apply to protect both the website and its members. By registering an account you agree to follow the rules below. Posting DO NOT Spam Spam is considers as posts that do not add anything constructive to a topic/blog. Examples of such posts would be single word/emoticon posts, posts containing repetitive sentences. DO NOT Double Post Double posting is when you make more than one post directly after a previous post you wrote. Use the 'EDIT' button to add or make changes to your post, then wait for another member to reply before making another post. The only exception to this is if the previous post is a few days old and your new post is going to contain purposeful information and not just "Bumping....". DO NOT Flame Flaming refers to the insulting of other members because of an opinion, personal background or beliefs they have. DO NOT Troll Deliberately starting arguments or attempting to provoke a negative emotional response is not permitted and is damaging to your own reputation on the forum. DO NOT Post or Upload Illegal Material Rock Raiders United DOES NOT support piracy. You are NOT permitted to share links, upload or make available publically or privately: full games, applications or media that would otherwise need to be purchased or licensed from the IP holder (the owner of the content). This does not apply to content that is released by the IP Holder as demo, freeware, trial and other license types for public sharing. There are certain situations where you may share limited files or samples of software/media for the purpose of achieving interoperability or providing education. This is so that tools can be created to read/write or otherwise interact with the shared files of software/media and further documented. Other situations where limited parts of software or media may be permitted are for the purpose of providing support or correcting software bugs. For example: To improve or make software/media compatible with newer systems or to provide missing content the software owner should have received. We understand such exceptions can make it difficult to decide whether some content is allowed to be posted. If you are unsure about a file you wish to upload, please contact one of the members of the moderation team. Links or Uploads may be removed at the request of the original author or copyright holder, or at the discretion of the moderation team at any time. DO NOT Post or Upload NSFW (Not Safe For Work) Material This covers all forms of pornographic material or sexually suggestive material. Materials containing high levels of gore are also not permitted. If you feel the content is questionable, don't post it! DO NOT Post Personally Identifiable Information The internet is full of creeps and thieves, do not post any information about yourself that may be stolen or identify you personally. The moderation team will remove such details from posts if they are found. DO NOT Discuss Religion or Politics These subjects fuel flaming. If you would like to discuss either of these, do so on a different forum. DO NOT Evade the Language Filter This refers to deliberately changing the lettering or using other tricks in order to get around our swear word filter. Slang however is allowed. DO NOT Post from the Future Futureposting is highly frowned upon as it can cause paradoxes, the advancement of technology before culture can catch up, and timestamp shenanigans. Always consult a licensed time lord before futureposting if you feel it is absolutely necessary. Also read the topic on Posting Etiquette Accounts DO NOT Create Multiple Accounts You are only allowed to use one account for yourself on this forum. If you would like your username changed, contact an Administrator. If you have been banned you are allowed to appeal to have a new account. DO NOT Use Rude, Offensive or Spam Usernames Account usernames that imply that your account is a dummy account to achieve access to something on the forum will get your account deleted. If your username is offensive, rude or designed to impersonate a member of this community or an official from another community your account may be renamed or deleted without warning. DO NOT Use Disposable Email Addresses If you can't trust us with your legitimate email address, don't register! Accounts with fake emails will be removed promptly without warning. DO NOT Use Company Logo's as a Profile Photo Please do not use company logo's, (such as the official LEGO logo) as your profile photo. They will be removed without notice. General Rules Respect Members All members should respect each other, including their opinions (See Flaming). If you are having problems with a particular member, you should seek to resolve it with them without causing disruption to the rest of the community. Respect Moderators The moderators not only spend time on the community as a normal member, they also having taken on extra responsibility to ensure members are following the rules. They 'keep the streets clean' as it were. Community Environment Sabotage If your actions (e.g post destruction, DDOS, spam etc) and attitude (e.g disrespect for moderators, members or the forum itself) and posts show or imply that you are trying to destroy the website or the community atmosphere causing the driving away of other members, you may be subject to a warning/restrictions or account ban. Excessive Sized Signatures Please be thoughtful of the many other viewers of RRU. Your signature should not be a distraction to the topic being read nor should it stretch pages needlessly. It is recommended you keep your signature under 250px (Pixels) high. Using spoilers should not be used for reducing the size. If your signature is deemed too big, it may be removed. Fake Goodbye Posts If you're going to leave RRU, do so without unnecessary attention-grabbing posts or insults to other users or RRU as a whole. A goodbye post is acceptable if done in good taste. We reserve the right to ban your account if you say you're going to leave forever as that will be interpreted as you forfeiting your account. These rules are subject to additions and alterations. Last Updated: 26/02/2019 * Newly Added since last update * Altered since last update
  45. 1 point

    RRB files

    This is quite an old thread but with the help of RobExplorien's descriptions I was able to create the following image: In the background you can see the IGCOLLID.BVB from the RACE0R1 folder. The red line is the AI path from the file R1_F_0.RRB. There were all three rounds in one file. I used only the stating position and the first three values from each k_27 structure. x and y are short divided by 256 and z is byte divided by 16.
  46. 1 point
    The Brickster

    Pizzeria [LI2]1

    From the album: LEGO Island 2 buildings

  47. 1 point

    Things We Know About Modding LRR

    Since there have been enough new members thinking that they can mod something that is outside of LRR's limitations, I felt it was necessary to make a topic that logs what we know about modding this game. As I don't know everything about modding, please post what you know, what I missed, or what has yet to be confirmed here and I or another mod will add it to the below list. It might also be a good idea to list examples of modded content along with known stuff. What We Can Change and How Textures: All textures, except menu pictures, must be 256-color BMP files, with dimensions that are powers of 2. Such dimensions include 128x128, 16x16, 64x512, and so on. Interface images don't seem to care about what dimensions you use. Example: Armored Rock Raiders, Enhanced Biomes We can animate textures on any object with an animation. Example: Animated Textures on Models Models: All models must be in Lightwave 5 format, no exceptions. LWO6.5 or higher is incompatible. Models sometimes crash the game during the first loading screen if they have no texture or pseudotexture applied, and always crash if the game cannot find their textures. Example: High Poly Small Wheel, High Poly Cabin Animations: All animations must be in Lightwave 5 format, no exceptions. Anything other than LWS5.6 will crash the game when they are encountered in a level. Example: Extended Dynamite Countdown You can force an animation to use an object in the World\Shared folder by opening the LWS file in Notepad, finding the LWO, and changing the path of the LWO to look like "\\object.lwo" Sounds: All sounds must be uncompressed WAV files. Sample rate seems to have no effect on playback in-game. Needs more evidence. Raiders, Creatures, Buildings, and Vehicles: Many aspects of these objects can be altered, including their speed, size, damage values carrying capacities, and overall behaviors. We can also add more of all of these to the game, including multiple raider classes. More than 11 buildings can be added and used, but the game will crash without specific EXE hacks. Example: Rideable Slugs, Multiple Minifigure Classes, Inferno Monster Upgradeable Objects: We can add new objects that can be attached to vehicles or buildings when they are upgraded. There seems to be a limit of about 75 objects that can be defined as UpgradeTypes. Any more will crash the game when loading. Levels: We can edit and add new levels in all aspects. The design, goal, and specific AI behavior for each level is customizable, including adding level specific variables. Example: Regroup, The Algorithm Weapons: We can change how the handheld beams work to a small extent, such as damage and range. Increased fire rate requires an edited animation. We can also change the damage, range, fire rate, and energy drain of vehicle and building weapons. Dynamite damage values and range can also be changed. Custom movies: I have personally tested my own AVIs and WMVs. Specific settings don't seem to matter too much. For the sake of saving space, use WMV. Scenery: Things like foliage or structures can be added into levels to give a unique look, but they must be coded as a creature, vehicle, or building. Creatures work best for this. Example: Ice Pillar Adding Priorities and Properties: In the CFG file, we can mix and match different properties to change how objects and levels work, and even activate ones that are not used by the original game. Some are not interchangeable. Example: Add New Priorities Notifications and Messages: We can activate unused notifications (the little tabs on the left side) so you can be annoyed twice, or even thrice, as often. Example: Monster Class Messages Tiny Monsters doing stuff: Tiny monsters can do everything regular monsters can do but only if they're placed in the OL file. Tiny monsters spawned from a dying monster can do nothing but run away and enter walls. Pathfinding: We have limited control over how paths are drawn for units. In the unit's CFG entry, either comment out the RouteAvoidance line or set it to FALSE. The unit will attempt to follow the center of a tile instead of drawing a smooth curve. Some, if not all vehicles do not use smooth curves in their paths. More testing will need to be done to confirm how this affects other vehicles and monsters. Interface Elements: We can change the position of all of the main game's interface panels through the use of Cafeteria. What We Cannot Change and Why Materials: We cannot add more materials to the game and we cannot edit the existing materials' behaviour. Energy Crystals will always be used for power, and ore and bricks will always be used for building. More than one teleportable raider: There is nothing in the code that allows us to add another Teleport Rock Raider to Planet button. You are stuck with whichever raider comes first in the CFG. Changing the trained skills: Geologists will always scan, explosive experts will always kill themselves, and engineers will always try to repair buildings that are being eaten by lava. Vehicles that only cross land will always require drivers, vehicles that only cross water will always require sailors, vehicles that cross both land and water will always require pilots, and vehicles that cross lava will always require pilots. Tiny Monsters: Rock Monsters and Lava Monsters always turn into Tiny Rock Monsters, and Ice Monsters always turn into Tiny Ice Monsters. Slugs and custom monsters can never turn into tiny monsters. Pathfinding Algorithms: Though you can prevent raiders from taking shortcuts over lava, there's no way to change how the game handles pathfinding. Dynamic Lighting: The only light sources in the game are the cursor light and track object view light. We cannot add other lights. Priorities and Properties: We cannot add new, original entries of either of these since their functions are hardcoded into the game. We're limited to what already exists. NPL Scripting: We can't do anything with NPLs other than what's listed here: http://www.rockraide...=Nerpsreference Saving Progress During a Level: You can only save your game after you complete a level. If you need to go to the bathroom, pause the game. Adding Wall Types: We can't add more wall types. We're limited to what was programmed into the game, and even then, some wall types can't be used because of changes made to the surf and dugg maps during development. Speculations Some members are digging through the game's assembly code to find ways around the game's limitations. Implementations of many such discoveries require editing the game's EXE.
  48. 0 points
    That's the thing: those were all the results on the internet. In other words: it's either the purchase of the Spanish (if it is Spanish) version or not, because that's about it when it comes to online offers. You don't have to like the situation, but sadly sometimes things are like this.
  49. 0 points


    Well, while fiddling around with NPL scripting, not only have I discovered that reordering some lines seems to prevent the game from running its .npl (more on this when I can replicate it). I've also managed to crash it in a vast number of interesting ways: WELCOME BACK CADET, IT'S TIME FOR YOU TO LEARN (this wasn't endless, the game crashed to desktop at the end of this clip)
  50. 0 points

    Tunnel Transport

    This mod will enable the tunnel transport. A file for fixing the carry glitch is included at the end of the post. Manual Install: Patchman Patch: Download LINK DOWN, use old method
  • Newsletter

    Want to keep up to date with all our latest news and information?
    Sign Up
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.