Archive for the ‘Uncategorized’ Category

Need People!

June 11, 2010

Yeah, it’s getting to the point where developing this without testers,coders,or any demographic for that matter, is becoming futile. If anyone wants to help me out with this in ANY way. Please email me at Hxrmn@comcast.net

Here are some ways you can help me:

  1. Really, at the very least I need ideas and suggestions. How can I develop this without any goals to work towards? So far this has mainly been a “feature creep” type of project where I just keep adding stuff.
  2. Report bugs in the mod on the project site.
  3. Make something using the mod and show it off.
  4. Tell your friends.
  5. Contribute, email me and I’ll give you privileges on the project so you can make changes to it.

I’ll keep updating stuff, when you download the alpha release it has svn on everything so you can update with just two clicks.

Oh and, here’s another video for you guys:

Videos!

June 10, 2010


Weapon Missile Trails

June 10, 2010


GLSL shaders!

Yeah, I’m still alive and still working on Quake Construct
400th code revision yesterday.

Quake Contruct Alpha Release!

August 16, 2009

Get it here:
http://code.google.com/p/quakeconstruct/

Pong and Panels

June 2, 2009

Remember when I mentioned that draw.3D function, well I did more stuff with it.

I also wrote a new networking tool: CreateNetworkedTable(index) which allows you to share a table(array) of data.

Here’s my friend and I demonstrating both systems in a game of 2D3D pong:

shot0050shot0051

The paddles, text, and board are all 2D elements plastered onto a 3D quad.

The 2 players are just 3D models rendered into the scene.

I also turned off world rendering in this example so what you see here is all that’s being rendered.

Now here’s the other thing, panels:

shot0037shot0040shot0038shot0039

These are similar to the panels in quake4 and doom3
This demonstrates several things:

  • QuakeConstruct’s new abillity to control and spawn map entities.
  • Draw.3D
  • Networked tables

These panels were placed in the map and paired with other entities.

The locked panel (OpenDoor) is set to be locked by default. Clicking on the other panel will unlock it, once unlocked the “OpenDoor” panel will… open the door.

I know images aren’t quite enough to convey what’s going on here, so I’ll post a video later.

Also, I made this pretty awesome 3D scoreboard for maps q3dm17 and q3ctf4:

shot0022shot0018shot0029shot0014shot0015

So yeah, draw3D again and this also shows off the new client scoreboard binds in QuakeConstruct.

So now you guys are up to date on what I’ve been messing with.
I’ll post some videos later 🙂

Render Targets and draw.Start3D awesome stuff

May 17, 2009

shot0000

shot0002

shot0001

shot0003

Trails!

April 28, 2009

Just finished work on a shiny new trail renderer:

shot0011

shot0009

shot0010

Took about 2 days.

P.S. 300th code revision!

Late night update

April 5, 2009

Today I added loading screen support to lua now you can change the loading screen layout, also I changed quake3’s windows console color (the blue was getting annoying)

loadin

Here’s the script to do it:

local function centerText(y,str,tw,th)
local sw = string.len(str)*tw
draw.Text(320 – sw/2,y,str,tw,th)
return y + th
end

local function centerText2(y,str,ts)
local tw = 18*ts
local sw = string.len(str)*tw
draw.Text2(320 – sw/2,y,str,ts,0)
return y + 25
end

local console = LoadShader(“textures/sfx/console02″)
local t = 0
function d2d(tab)
draw.SetColor(0,0,0,1)
draw.Rect(0,0,640,480)

local svinfo = GetConfigString(CS_SERVERINFO)
local sysinfo = GetConfigString(CS_SYSTEMINFO)
local cheats = CS_ValueForKey(sysinfo,”sv_cheats”)
local pure = CS_ValueForKey(sysinfo,”sv_pure”)

local mapname = CS_ValueForKey(svinfo,”mapname”)
local host = CS_ValueForKey(svinfo,”sv_hostname”)
local maptext = GetConfigString(CS_MESSAGE)
local motd = GetConfigString(CS_MOTD)
local levelshot = LoadShader(“levelshots/” .. mapname .. “.tga”)
local detail = LoadShader(“levelShotDetail”)
if(levelshot == 0) then
levelshot = LoadShader(“menu/art/unknownmap”)
end

local w,h = 320,250

draw.SetColor(1,1,1,1)
local y = centerText2(10,”Connecting to ” .. host,1)
y = centerText2(y+2,”Loading ” .. tab.loadString,.5)

draw.Rect(320-w/2,240-h/2,w,h,levelshot)
draw.Rect(320-w/2,240-h/2,w,h,detail,0,0,2.5,2)

local ny = 240+h/2
ny = centerText2(ny,maptext,1)
centerText(ny,motd,10,10)

local x = 0
y = 400

for k,v in pairs(tab.playerIcons) do
draw.Rect(x,y,40,40,v)
x = x + 40
end

x = 0
y = y + 40

for k,v in pairs(tab.itemIcons) do
draw.Rect(x,y,30,30,v)
x = x + 32
end

draw.RectRotated(600,440,60,60,console,-t*10)
t = t + 1
end
hook.add(“DrawInfo”,”cl_ginfo”,d2d)

Pretty simple stuff.

My crowning achievment for the day was optimizing the lua downloader.

Instead of taking 45 seconds to download a 500 line lua file it takes about 6 seconds. woot

I’m thinking about releasing this very soon. It’ pretty stable now 🙂

I just need to tie up some lose ends.

By the way, if anyone is visiting this blog (and I think you are)

Please don’t hesitate to make suggestions. I’m at a bit of an inpass because I’m not sure what people will want to do with this.

So if you have any ideas, post them in the comments or email me at Hxrmn@comcast.net

-Thank you

Progress!

March 10, 2009

Today I made a hud using the new itemInfo bindings and the animatedSprite code I created.

NewHud

All of the numbers are contained in one texture (the animated sprite) and can be referenced by frame:

anim_numbers

I also JUST finished a new binding that lets lua coders write game shaders right in their scripts.

local data =
[[{
cull back
deformVertexes wave 100 sin 0.8 0 .5 1
polygonoffset
{
map gfx/colors/black.tga
}
}]]
local s = CreateShader(data)
local rmodel = LoadModel(“models/gibs/skull.md3”)
local tr = PlayerTrace()
local pos = tr.endpos + Vector(0,0,50)
local ref = RefEntity()
ref:SetColor(1,1,1,1)
ref:SetPos(pos)

local function d3d()
ref:SetShader(0)
ref:Render()
ref:SetShader(s)
ref:Render()
end
hook.add(“Draw3D”,”cl_shadertest”,d3d)

Result:

shot0022

I plan to write some kind of wrapper for this, something like:

local s = Shader()
local stage1 = s:AddStage()
stage1:AddParam(“blah”)
…etc

In other news, I am working on a help menu so people will know how to use this thing:

shot0023

shot0024

shot0025

The help menu uses a small markup language I wrote (similar to HTML) for quakeconstruct. So I should be able to churn out a pretty detailed help system.

So that’s the status of things as of right now, I’ll keep you guys posted (more often, I promise).

-Hxrmn

Welcome

February 13, 2009

It is here I shall post many posts of information about quake construct and it’s development.

Make yourselves comfortable, bookmark this site and I shall keep you up to date on that status of all that is my quake3 mod.

What is Quake Construct?

Quake Construct is a quake3 mod that allows anyone with at least some
knowledge of the lua programming language to create *simple, small
modifications for the Quake 3 engine.

Through the use of hooks and bindings to the quake3 engine, users can assign
their own responses to particular events that happen in-game such as
Graphics Drawing and Player Interactions.

Lua is a high-level programming language, usually used for providing
scripting access for lower-level code. (see http://www.lua.org/pil/)

The goal of this project is to provide quake3 players with tools to design
Their own mods without touching a line of C, these mods can be run in
Real-time without compiling.

Why did you start working on this?

Because I wanted to design a faster way to make mods. I don’t want to write 100 lines of complex C code to make the player jump differently and then compile it, test it, and debug it for an hour when it doesn’t work.

What is Quake3?

Quake3 is a first person shooter that was released by ID Software in 1999.

When will you be releasing Quake Construct?

I’m not really sure about this one. I might just release a beta to start out and let people play with that while I fine tune the final release.

How often will you update this blog?

I’ll update every time I have something important to say about the mod, or when I make some kind of new breakthrough feature.

Tell us about yourself.

I am an 18 year old student.

I love pop-tarts, dogs, television, programming, and music of all sorts.

I build computers, make movies, and create game content (music, animation, textures, models, sounds).

I don’t have a girlfriend.


Design a site like this with WordPress.com
Get started