Chaosforge Forum

  • April 19, 2024, 21:49
  • Welcome, Guest
Please login or register.



Login with username, password and session length

Show Posts

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

Messages - yaflhdztioxo

Pages: 1 ... 15 16 [17] 18
241
Requests For Features / Re: Grenade Launcher/Bouncing weapons
« on: April 13, 2010, 17:15 »
If NetHack can bounce wands we can bounce grenades ;)

I would like fully customizable weapons.  For every action the modder can define everything the weapon and missile could possibly do.  It'd be a lot of work and most weapons would never need that level of customization but there's going to be some crazy weapon somewhere that will need a hook to run every tick it is equipped or something...

242
Requests For Features / Re: Grenade Launcher/Bouncing weapons
« on: April 13, 2010, 12:30 »
Seconding request.

'Undoomish' criticisms aside it's something mods will want.  Missiles are currently somewhat limited.

243
Modding / Re: Cell Flag Question
« on: April 13, 2010, 12:28 »
They're related to graphical tiles.

Beyond that I don't know how they work.  I know it's safe to ignore them if you don't care about tiles...

244
Modding / TerminatorRL
« on: April 09, 2010, 21:31 »
This came about after some kicking around in IRC.  The actual level only took about an hour to create.  It's rough, but it's not exactly meant to be Citizen Kane :)

Code: [Select]
local t2_plot = function ()
   outputsave()
   Clear()
   bloodslide()
   clearkeybuf()
   plotwrite(6, 7, RED, 60, "Three million humans lost their money on July 2nd, 2003.",
                             "        ",
                             "The viewers of the abomination called the movie discontinuity.",
                             "They lived only to face a new sequel, and remake after remake...")
   if escapepressed() then
     return
   end
   enter()
   Clear()
   Update()
   plotwrite(6, 8, RED, 60, "Filmnet, the company that would eventually acquire the franchise,",
                             "sent two terminators back through time.",
                             "Their mission: to prevent the sequels and restore the property's value.")
   if escapepressed() then
     return
   end
   enter()
   Clear()
   Update()
   plotwrite(6, 8, RED, 60, "The first terminator was programmed to find James Cameron",
                             "and convince him to put a stop to the new film.",
                             "It failed.")
   if escapepressed() then
     return
   end
   enter()
   Clear()
   Update()
   plotwrite(6, 8, RED, 60, "The second was set to strike at the movie itself",
                             "while it was still filming.",
                             "It was just a matter of who would go down first.")
   if escapepressed() then
      return
   end
   enter()
   clearkeybuf()
end

--ground
Cells{
  sID        = "t2_ground",
  name       = "ground",
  ascii      = "\249",
  asciilow   = ".",
  color      = LIGHTGRAY,
  color_dark = DARKGRAY,
  set        = CELLSET_FLOORS,
  flags      = { CF_OVERLAY },
  bloodto    = "blood",
}
Cells{
  sID        = "t2_rock",
  name       = "ground",
  ascii      = "\249",
  asciilow   = ".",
  color      = BROWN,
  color_dark = DARKGRAY,
  set        = CELLSET_FLOORS,
  flags      = { CF_OVERLAY },
  bloodto    = "blood",
}
Cells{
  sID        = "t2_road",
  name       = "road",
  ascii      = "\249",
  asciilow   = ".",
  color      = DARKGRAY,
  color_dark = DARKGRAY,
  set        = CELLSET_FLOORS,
  flags      = { CF_OVERLAY },
  bloodto    = "blood",
}
Cells{
  sID        = "t2_roadmarker",
  name       = "road marker",
  ascii      = "\249",
  asciilow   = ".",
  color      = YELLOW,
  color_dark = DARKGRAY,
  set        = CELLSET_FLOORS,
  flags      = { CF_OVERLAY },
  bloodto    = "blood",
}
Cells{
  sID        = "t2_grass1",
  name       = "grass",
  ascii      = "\249",
  asciilow   = ".",
  color      = GREEN,
  color_dark = DARKGRAY,
  set        = CELLSET_FLOORS,
  flags      = { CF_OVERLAY },
  bloodto    = "blood",
}
Cells{
  sID        = "t2_grass2",
  name       = "grass",
  ascii      = "\249",
  asciilow   = ".",
  color      = LIGHTGREEN,
  color_dark = DARKGRAY,
  set        = CELLSET_FLOORS,
  flags      = { CF_OVERLAY },
  bloodto    = "blood",
}

--walls
Cells{
  sID        = "t2_void",
  name       = "void",
  ascii      = " ",
  color      = BLACK,
  color_dark = BLACK,
  set        = CELLSET_WALLS,
  flags      = {CF_BLOCKLOS, CF_BLOCKMOVE, CF_MULTISPRITE, CF_STICKWALL},
}

--movie stuff
Cells{
  sID   = "t2_camera",
  name  = "movie camera",
  ascii = "%",
  color = DARKGRAY,
  armor = 3,
  hp    = 3,
  flags = { CF_BLOCKMOVE, CF_FRAGILE, CF_OVERLAY },
}
Cells{
  sID   = "t2_lights",
  name  = "lights",
  ascii = "%",
  color = LIGHTGRAY,
  armor = 3,
  hp    = 3,
  flags = { CF_BLOCKMOVE, CF_FRAGILE, CF_OVERLAY },
}
Cells{
  sID   = "t2_bluescreen", --
  name  = "screen",
  ascii = "=",
  color = DARKGRAY,
  armor = 3,
  hp    = 10,
  flags = { CF_BLOCKMOVE, CF_OVERLAY },
}
Cells{
  sID   = "t2_chair",
  name  = "director's chair",
  ascii = "/",
  color = BLUE,
  armor = 2,
  hp    = 1,
  flags = { CF_PUSHABLE, CF_BLOCKMOVE, CF_FRAGILE, CF_OVERLAY },
}


--enemies
Beings{
  name     = "guard",
  sID      = "t2_guard",
  ascii    = "@",
  color    = BROWN,
  toDam    = 0,
  toHit    = 0,
  HP       = 10,
  speed    = 90,
  corpse   = true,
  danger   = 1,
  sprite   = 0,
  desc     = "Security guards hired for the shoot",
  flags    = { BF_OPENDOORS },
  OnCreate = function()
   Being.setWeapon(ITEM_PISTOL)
   Being.addItem(ITEM_AMMO, 30)
  end,
}
Beings{
  name   = "worker",
  sID    = "t2_worker",
  ascii  = "@",
  color  = RED,
  toDam  = 0,
  toHit  = 0,
  HP     = 10,
  speed  = 90,
  corpse = true,
  danger = 0,
  sprite = 0,
  desc   = "Lowly workers",
  flags  = { BF_OPENDOORS, BF_DISTANCE },
}
Beings{
  name   = "Arnold Schwarzenegger",
  sID    = "t2_arnie",
  ascii  = "@",
  color  = DARKGRAY,
  toDam  = 1,
  toHit  = 0,
  HP     = 15,
  speed  = 100,
  corpse = true,
  danger = 1,
  sprite = 0,
  desc   = "The Terminator himself.",
  flags  = { BF_USESITEMS, BF_UNIQUENAME, BF_OPENDOORS },
  OnDie  = function()
    UI.msg("Hey!  No killing the Governator!")
  end,
}
Beings{
  name   = "Jonathan Mostow",
  sID    = "t2_director",
  ascii  = "@",
  color  = LIGHTBLUE,
  toDam  = 0,
  toHit  = 0,
  HP     = 10,
  speed  = 90,
  corpse = true,
  danger = 1,
  sprite = 0,
  desc   = "The film's director.",
  flags  = { BF_USESITEMS, BF_UNIQUENAME, BF_BOSS, BF_OPENDOORS, BF_DISTANCE },
  OnDie  = function()
    UI.msg("Terminated.")
  end,
}
Beings{
  name   = "Nick Stahl",
  sID    = "t2_actor1",
  ascii  = "@",
  color  = WHITE,
  toDam  = 0,
  toHit  = 0,
  HP     = 10,
  speed  = 90,
  corpse = true,
  danger = 1,
  sprite = 0,
  desc   = "The whiny lead.",
  flags  = { BF_UNIQUENAME,  BF_OPENDOORS, BF_DISTANCE },
}
Beings{
  name   = "Claire Danes",
  sID    = "t2_actor2",
  ascii  = "@",
  color  = WHITE,
  toDam  = 0,
  toHit  = 0,
  HP     = 10,
  speed  = 90,
  corpse = true,
  danger = 1,
  sprite = 0,
  desc   = "The other whiny lead.",
  flags  = { BF_UNIQUENAME,  BF_OPENDOORS, BF_DISTANCE },
}
Beings{
  name   = "Kristanna Loken",
  sID    = "t2_actor3",
  ascii  = "@",
  color  = WHITE,
  toDam  = 0,
  toHit  = 0,
  HP     = 10,
  speed  = 90,
  corpse = true,
  danger = 1,
  sprite = 0,
  desc   = "The new terminator",
  flags  = { BF_UNIQUENAME,  BF_OPENDOORS, BF_DISTANCE },
}



Levels("CUSTOM",{
  name = "Hell's Arena",

  Create = function ()
 
    t2_plot()
 
    Level.fill(CELL_T2_VOID)
    Level.tile(".", CELL_FLOOR)
    Level.tile(",", CELL_T2_GROUND)
    Level.tile("#", CELL_WALL)
    Level.tile("+", CELL_DOOR)
    Level.tile("R", CELL_T2_ROAD)
    Level.tile("S", CELL_T2_ROADMARKER)
    Level.tile("=", CELL_T2_BLUESCREEN)
    Level.tile("%", CELL_T2_CAMERA)
    Level.tile("O", CELL_T2_LIGHTS)
    Level.tile("C", CELL_T2_CHAIR)
    Level.tile("1", CELL_FLOOR, { being = NPC_T2_GUARD})
    Level.tile("2", CELL_FLOOR, { being = NPC_T2_WORKER})
    Level.tile("3", CELL_T2_GROUND, { being = NPC_T2_ARNIE})
    Level.tile("4", CELL_T2_GROUND, { being = NPC_T2_DIRECTOR})
    Level.tile("5", CELL_T2_GROUND, { being = NPC_T2_ACTOR1})
    Level.tile("6", CELL_T2_GROUND, { being = NPC_T2_ACTOR2})
    Level.tile("7", CELL_T2_GROUND, { being = NPC_T2_ACTOR3})
    Level.tile("8", CELL_T2_GROUND, { being = NPC_T2_WORKER})
   
    Level.put(2,2,{
      ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,RRRRRRRRR,,,,,,,,,,,",
      ",,,,,,########,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,RRRRRRRRR,,,#####,,,",
      ",,,,,,#1.....#,,,,,8,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,RRRRRRRRR,,,#...#,,,",
      ",,,,,,#......+,,,,,,,,,================,,,,,,,,,,,,,,,,,RRRRSRRRR,,,#.2.#,,,",
      ",,,,,,#......#,,,,,,,,,,,,,,,,,,,,,,,,5,,,,,,,,,,,,,,,,,RRRRSRRRR,,,##+##,,,",
      ",,,,,,#......#,,,,,,,,,,,,,3,,,,,,,,,,,,,,,,,,,,,,,,,,,,RRRRRRRRR,,,,,,,,,,,",
      ",,,,,,#......#,,,,,,,O,,,,,,,,,,,,,,,,,,,O,,,,,,,,,,,,,,RRRRRRRRR,,,,,,,,,,,",
      ",,,,,,#......#,,,,,,,,,,,,,,,,,,,,,,%,,,,,,,,,,,,,,,,,,,RRRRRRRRR,,,,,,,,,,,",
      ",,8,,,#......+,,,,6,,,,%,,,,,,,,,,,,,,O,,,,,,,,,,,,,,,,,RRRRRRRRR,,,,,,,,,,,",
      ",,,,,,#1.....#,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,RRRRSRRRR,,,,,,,,,,,",
      ",,,,,,########,,,,,,,,,,,,,,C,,%,,,,,,,,,,,,,,,,,,,,,,,,RRRRSRRRR,,,,,,,,,,,",
      ",,,,,,,,,,,,,,,,,,,,,,,,,,,,4,,,,,,,,,,,,,,,,,,,,,,,,,,,RRRRRRRRR,,,,,,,,,,,",
      ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,RRRRRRRRR,,,,,,,,,,,",
      ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,RRRRRRRRR,,,,,,,,,,,",
      ",,,,,,,,,,,,8,,,,,,,,,,7,,,,,,,##############,,,,,,,,,,,RRRRRRRRR,,,,,,,,,,,",
      ",,,,,,,,,,,,,,,,,,,,,,,,,,,8,,,#............#,,,,,,,,,,,RRRRSRRRR,,,,,,,,,,,",
      ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,#............#,,,,,,,,,,,RRRRSRRRR,,,,,,,,,,,",
      ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,#............#,,,,,,,,,,,RRRRRRRRR,,,,,,,,,,,",
    })                                                               

    Level.scatter(2, 2, MAXX-1, MAXY-1, CELL_T2_GROUND, CELL_T2_GRASS1,  40)
    Level.scatter(2, 2, MAXX-1, MAXY-1, CELL_T2_GROUND, CELL_T2_GRASS2,  10)
    Level.scatter(2, 2, MAXX-1, MAXY-1, CELL_T2_GROUND, CELL_T2_ROCK,   100)
   
    Level.player(68,10)
  end,
 
  OnEnter = function ()
    Player.clearInv()
    Player.setWeapon( ITEM_SHOTGUN )
    Player.addItem( ITEM_SHELL, 50 )
    Player.hpmax = 1000
    Player.hp = 1000
    Player.armor = 200
  end,
})

If anyone wants to adopt the level or idea they can.

245
Bug Reports / Armor durability 255%
« on: April 07, 2010, 19:06 »
Take the Gothic Armor.  It has 200% durability.
Add one bulk mod.
Result: Not 300% or 400% durability but 255%.

246
Angel of Second Sight (has come up twice IIRC, once called Angel of Oracle):

Player vision is reduced to 2, player starts with beingsense and leversense1 (beings show up as red dots, levers are labeled as beneficial/harmful).  If player vision can be reduced below 2 (currently it cannot) I'd support giving powersense and leversense2 as well.

247
Discussion / Re: How hard is programming?
« on: April 05, 2010, 21:53 »
The sandbox is a good way to start.

I'm in the camp that says programming is easy.  The trick is to be as dumb and single minded as the computer.

248
Modding / Re: Shotgun-style weapons not aiming properly?
« on: March 31, 2010, 19:43 »
Haven't worked that one out either.  Finer loading/unloading controls are needed in my humble opinion.  Someone ought to put that in the requests thread.

Side note: IRC is a good place to brainstorm with modders.  It's where most of the sandbox abuse was first cooked up.

249
Modding / Re: Shotgun-style weapons not aiming properly?
« on: March 30, 2010, 18:54 »
We're pretty sure it's a bug.  Attempts to heckle Kornel about it haven't confirmed it yet though :)

250
Requests For Features / Re: New unique items
« on: March 26, 2010, 19:58 »
I don't think so.  If anyone can figure out a way to bounce projectiles they would make a lot of people happy.

251
I would assume YYYY-MM-DD was suggested so that mortems will be in order.  The format depends on your regional settings; if dates on your computer are in YYYY-MM-DD format then the mortems follow that.

252
Bug Reports / Re: [0.9.9.1] lever in wall
« on: March 18, 2010, 07:57 »
I heartily approve of a Floyd thread.

253
Modding / Re: Sandbox example
« on: March 17, 2010, 23:49 »
I updated the wiki a couple days ago.  Hopefully it's clearer now but it's hard for me to know.

In retrospect it's obvious that I should not have expected command-line expertise.  Not everyone who wants to access the sandbox will want to modify doomrl.  Some people might just want to try out new levels.  I wasn't trying to be critical (I said as much initially); I wanted to know where the problem was.

254
Modding / Re: Sandbox example
« on: March 15, 2010, 14:30 »
Your post saddens me :(

The console is the most intuitive user interface imaginable.  Everyone should know it...

255
Modding / Re: Sandbox example
« on: March 15, 2010, 07:41 »
Don't take this as a criticism but it is there.

http://doom.chaosforge.org/wiki/index.php?title=Sandbox
Quote
How to activate it

Run DoomRL with the -sandbox file argument. To load the default arena level, run:

doomrl -sandbox sandbox/sandbox_arena.lua

Is that not clear enough?  Does it need to be changed or moved?

Pages: 1 ... 15 16 [17] 18