Chaosforge Forum

  • March 28, 2024, 07:10
  • 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.

Topics - yaflhdztioxo

Pages: 1 [2]
16
Modding / Pac-Man
« on: September 28, 2011, 19:13 »
This has been floating around since 0993 and is part of a larger mod that will not be released for at least another version.  It features some distinctly unusual (for DoomRL) AIs which accurately represent their original game counterparts, and the AIs are the star of this show.  Enjoy.

Distributed Raw, because Raw is Better.

17
Bug Reports / [0.9.9.4 Win2003 R2 x64] Crashes when loading midi
« on: September 05, 2011, 18:40 »
Quote
----------------------------------------------------------------------
Timestamp   : 09.06.2011 00:22:19
Error level : FATAL EXCEPTION
Message     : Fatal exception encountered

An unhandled exception occurred at $0048181E :
ESoundException : RegisterMusic(music/00 - inter.mid): Unknown file format
  $0048181E  TSOUND__REGISTERMUSIC,  line 156 of d:/Projects/fpcvalkyrie/src/vsound.pas
  $00481AA2  TSOUND__REGISTERMUSIC,  line 171 of d:/Projects/fpcvalkyrie/src/vsound.pas
  $0047C44D  TDOOMCONFIG__MUSICQUERY,  line 244 of src/doomconfig.pas
  $00480B29  TLUACONFIG__ENTRYFEED,  line 62 of d:/Projects/fpcvalkyrie/src/vluaconfig.pas
  $0047BF5C  TDOOMCONFIG__CREATE,  line 208 of src/doomconfig.pas
  $0041D8F0  TDOOM__LOAD,  line 219 of src/doombase.pas
  $0041E027  TDOOM__RUN,  line 326 of src/doombase.pas
  $004022CA  main,  line 91 of src/doomrl.pas

----------------------------------------------------------------------

Seems self-explanatory.  Problem goes away if GameMusic == false.  Since the linux folks have similar problems I'm guessing they are related.

18
Bug Reports / MAd does not affect plasma shotgun
« on: March 15, 2011, 05:19 »
on account of it being plasma instead of shrapnel.  Since ignoring armor is better than halving armor I would consider this a bit illogical, and thus a bug.

19
Modding / Voodoo dolls
« on: March 01, 2011, 20:06 »
I was playing around in the sandbox with the Generator class.

There were two Doomguys.  And the extra one acted just like voodoo dolls do in regular doom.  Which is AWESOME, so I want that kept.

Unfortunately there was no way to NOT have voodoo dolls unless I manually called all of the Generator functions and omit Generator.place_player at the end.  Which is fairly advanced considering that most of the time what I'll want to do is simply call Generator.generate() after setting the danger level.


To fix this issue but still keep the voodoo dolls I propose a quick hack of "if the coords are -1, -1 don't place the player in a scripted level", or possibly "Don't place the player if no call to Level.Player() was made"  Might be interesting to see what happens if NO player is spawned, but that's their bug.

20
AliensRL / AliensRL 0.8 YAVP
« on: June 04, 2010, 02:37 »
-- AliensRL 0.8 Post Mortem ------------------------------------------

  Name     : Ellen Ripley
  Class    : Marine
  Rank     : Badass
  Result   : killed the queen and escaped
  Score    : 24550

  Total experience  : 27100
  Experience left   : 2900
  Game length       : 621897 turns

  Security keycards : 6
  Military keys     : 1

  Armor   : Power armor [4]
  Sidearm : M4A3 pistol (12/12)
  Primary : M41A pulse rifle (62/99)
  Heavy   : M56 smartgun (20/50)
  Medpacks: 5

-- Graveyard ---------------------------------------------------------

  #°.........°#.......%|.....#.........
  #...........#..............#..ÜÜÜ.ÜÜ.
  #..........°#..............#.........
  #...°......a#../...........#..ÜÜÜ.ÜÜ.
  #######-#####..............#.........
  ##........../..............#..ÜÜÜ.ÜÜ.
   ##.........#..............#.........
    ##........#....a.a.......|..ÜÜÜ.ÜÜ.
     ##.......#..............#.........
      ##......#.a............#..ÜÜÜ.ÜÜ.
       ##.....#..............#.........
        ##....#..|..X==......#..ÜÜÜ.ÜÜ.
         ##...#.&...===......#þa.......
          ##..#..%..===......#......þ.þ
           ##a#..a...a.......######-###
            #########/########.þ.......
             ##..............#......]..
              ##.............#..ÜÜÜ.ÜÜ.
               ##......a.....#.........
                ##..........a#þ........
                 ##..........#...þ....þ
                  #####################

-- Skills ------------------------------------------------------------

  Sidearms      : expert
  Light weapons : master
  Heavy weapons : advanced
  Technical     : advanced
  Medicine      : basic
  Fitness       : expert
  Perception    : basic

-- Ammunition --------------------------------------------------------

  9mm ammo      : 233/400
  .44 ammo      : 150/150
  M309 ammo     : 0/500
  M250 ammo     : 380/500
  60mm gren.    : 39/40
  12g. shells   : 200/200
  frag grenade  : 6/3
  inc grenade   : 3/3
  krak grenade  : 2/3

-- Kills (2354) ------------------------------------------------------

  490 juveniles
  386 warriors
  160 elites
  31 praetorians
  225 scavengers
  674 hunters
  74 stalkers
  193 drones
  102 workers
  18 overseers
  1 queen

-- Messages ----------------------------------------------------------

 juvenile dies.
 You barely scratch the juvenile! You
 lightly hit the juvenile! You barely
 scratch the juvenile! You lightly hit
 the juvenile! The juvenile dies.
 You barely hit the hunter! You barely
 hit the hunter! You barely scratch
 the hunter! You barely hit the
 hunter! The hunter dies.
 You activate the Elevator. Entering

----------------------------------------------------------------------

First win.  11th game overall.

Compared to skarczew I played a much slower game, killing enemies and exploring the towers which paid off as the end game was (comparatively) easy.

My first two skill buys were Sidearms and light.

The early game was, naturally, a hunt for ammo.  I let enemies get close enough to blast 'em and tried carefully to balance my med-pack ammo expenditures.  I lucked out though and got the combat shotty and a nice bit of surplus ammo--enough that I willingly killed drones and workers to get them off my back.  Finding armor was a bit tougher, but I eventually found a flak jacket and later flak armor.

By mid-game I'd thrown some XP into medicine (one level is good, more are not) and fitness.  Hunters were giving me fits with their tendency to 'crawl through vents' and appear right where I didn't want them to; fitness reduced my pain (all I know about the 'pain' stat is that you don't want it) and gave me more grenades.  Grenades are defensive if you ask me.  A good inc or krak grenade can turn certain hunter tag team death into at worst 20 hp lost.  Without grenades my marine wouldn't be here to talk about it.

Eventually I found the nicely balanced scoped M42A.  It used M250 ammo, was highly penetrative, and when coupled with my expert light arms training hurt aliens mucho.  I started using it almost exclusively once I noticed that my ammo gains in the military tower covered using it to kill every drone, scavenger, and elite in my way.  Occasionally I used an M41A; it handled the tougher enemies a little bit better but it was harder to keep stocked with ammo.

End game was fairly easy.  Eventually I found the power armor giving me a backup heavy weapon (I used the RPG while bored for a while; for the final ascent I went with the two automatic weapons that didn't share ammo).  By now my marine was pretty tough; XP was rolling in and once I mastered light arms I was throwing it into technical and fitness and even throwing (a mostly useless stat IMHO).  I rarely dipped below 4 medkits and I was leaving a lot of them behind.  Since I've never actually gotten this far I had no idea that I needed to save up keycards to get to the queen.  Whoops.  About two hours of searching later I had the keycards, beat up the queen, learned I had to go all the way back while being hounded by enemies, and beat the game.

I hate hunters.  I really hate how they jump out of imaginary vents.  The run command is useful for not getting surprised by the damn things, but there were several close calls.

I never did find the magnun though...

21
Modding / Idea list
« on: May 31, 2010, 18:29 »
So, do you have an awesome idea for a doomrl level or mod but lack the skill/time/motivation to make it a reality?  Post it here, and let your idea influence others!


My idea (that I'm not going to code):  The DoomRL Casino

Play the slots, bet items for upgrades, and battle monsters when the chips go down.  A fun way to spend the evening!  Of course the house has the advantage, and not just because they can eviscerate unruly players...


Subset idea: Russian Roulette

dlvl 22-24.  Six teleporters.  Five lead to happy equipment.  One is instant death.  Do you take the risk?  The rewards should only be tempting to people who probably can't take out the cyberdemon with their current equipment.


Now it's the community's turn to implement or exchange ideas of their own!

22
Releases / Skulltag Arena
« on: May 06, 2010, 22:33 »
The skulltag arena discussion thread.  Current version is on the mod server.  Current changelog and sources are stored here: http://forum.chaosforge.org/index.php/topic,6139.0.html.  This mod is released under the 'Do whatever the hell you want with it' license.

I am interested in bugs and suggestions as well as balance discussion, though if someone else wanted to take over for this mod's upkeep I'd be fine with that too. 

23
Modding / Infinite Arena (0.9.9.1)
« on: April 24, 2010, 19:25 »
Since several are based on it but not everyone knows what it is, the infinite arena is attached (1.03).  Wiki version also updated.

24
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.

25
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%.

26
Modding / Level modding and syntax preference
« on: February 25, 2010, 15:43 »
Just in case you didn't know, modding is now open--in a limited form.  Already work is underway, creating new and exciting levels, and a tutorial is planned as well.  And an argument sort've broke out on this point which hopefully you, the community, can resolve :)

In Lua (the language mods are written in), almost every object is a table.  And Lua is fairly flexible with how you assign tables.  For instance, if I were to create an item, the following approaches are all valid:
Code: [Select]
-- C-style
local new_cell
new_cell        = {}
new_cell.name   = "object"
new_cell.ascii  = ":"
Cells(new_cell)

-- Table style
local new_cell
new_cell = {}
new_cell["name"]  = "object"
new_cell["ascii"] = ":"
Cells(new_cell)

-- Lua style
Cells{
  name  = "object",
  ascii = ":"
}

Which one do you, the community prefer?  It's the form that the wiki pages will use, so choose wisely!

27
Bug Reports / Another badge bug
« on: November 22, 2009, 00:28 »
version: the public win 99

UAC Diamond is not awarded when the conditions are met.  Not that anyone's ever going to get it anyway.

Pages: 1 [2]