Re: Forum Changes
call me "hard to please" or whatever you will, but imo, the more recent changes are all pretty bad. the likes and the karma ("poke-balls"...) make it too much like social media... "like- and "karma-whoring" galore. I also find the new default avatars pretty awful too. do you know of any social media site that doesn't do this?
I avoid twitter, fb, tumblr and friends for a reason, y'know.. :L
as izzy said, this is just a test. if you have a definitive opinion on it, speak up please!
August 05, 2016, 09:02:55 PM HST
5
Re: Wut
the windows download is openspades only.... :(
I'm going to give you a chance to revise your appeal, as lying severely diminishes any chance of you getting unbanned. I saw you holding a block and snapping directly to two separate players' heads (which were each around 80-100 blocks away!) every single time you copied/grabbed a block's color, and tracking them for around a quarter second and letting go as you realized what's going on for each time it happened. that's certainly not regular mouse movement, even taking lag into account. if that's not aimbot, I don't know what is.
October 29, 2016, 02:26:25 PM HST
tower made by me, Titanium, and Art (possibly also coveth and SpyKaps, but I wasn't paying that much attention :])
final score: 4 - 9 November 20, 2016, 03:50:55 AM HST
2
voxscript
this is a lot of fun to mess around with, so I thought I'd release it :)
as you all know, VOXLAP is a 3D voxel engine made by Ken Silverman. it's a very nice and easy-to-use engine, once you get it working, but most people either can't compile it or simply don't have the time/patience for doing so, which brings me to voxscript.
voxscript is a small program I made which combines VOXLAP and AngelScript. AngelScript has proven to be a very versatile scripting language, and besides, its arrays don't start at 1, so why wouldn't I pick it? :) I'm looking at you, Lua
how it works:
edit main.as to your liking
launch voxscript.exe
notice a problem or two
close voxscript & repeat
Spoiler for current VOXLAP support:
green: supported, orange: mostly supported, red: not supported note: whenever you see a *, that's just because I'm not sure how the pointer would transfer over to angelscript. otherwise it should be @ type lpoint3d (int-based 3D vector, mainly used for block positions) type point3d (float-based vector) type point4d type dpoint3d (double-based vector)
type kv6voxtype
type kv6data (KV6 model storage datatype -- no voxel access support) • int leng, xsiz, ysiz, zsiz • float xpiv, ypiv, zpiv • uint numvoxs • kv6data@ lowermip (might add this in, not sure) • kv6voxtype[] vox • uint[] xlen • uint16[] ylen
type hingetype type seqtyp type kfatype
type vx5sprite (supports KV6 fully, doesn't support KFA) • point3d p • int flags • union { point3d s, x } • union { kv6data@ voxnum, kfatype@ kfaptr } • union { point3d h, y } • int kfatim • union { point3d f, z } • int okfatim
type flstboxtype type lightsrctype type vspans
type vx5_struct (vx5_struct is a special type, only used by VOXLAP in global vx5 for settings, such as fog color / distance) • double clipmaxcr • dpoint3d cliphit[3] • int cliphitnum • int minx, miny, minz, maxx, maxy, maxz • int flstnum • flstboxtype flstcnt[256] • int globalmass • int16 kfaval[1024] • int anginc, sideshademode, mipscandist, maxscandist, vxlmipuse, fogcol • int kv6mipfactor, kv6col • int xplanemin, xplanemax • int curcol, currad, curhei • float curpow • int colfunc(lpoint3d &in) [callback] • int cen, amount, *pic, bpl, xsiz, ysiz, xoru, xorv, picmode • point3d fpico, fpicu, fpicv, fpicw • lpoint3d pico, picu, picv • float daf • int lightmode • lightsrctype lightsrc[256] • int numlights • int fallcheck (untested!)
global vx5_struct vx5
(might add these, they're currently called by voxscript itself) int initvoxlap() void uninitvoxlap()
int isvoxelsolid(int x, int y, int z) int anyvoxelsolid(int x, int y, int z0, int z1) int anyvoxelempty(int x, int y, int z0, int z1) int getfloorz(int x, int y, int z) int getcube(int x, int y, int z) (use hitscan_get_color with this, return value is actually a pointer)
void setcube(int x, int y, int z, int color) void setsphere(lpoint3d &in pos, int rad, int set) (use vx5.curcol for color) void setellipsoid(lpoint3d &in p0, lpoint3d &in p1, int hitrad, int dacol, int bakit) void setcylinder(lpoint3d &in p0, lpoint3d &in p1, int cr, int dacol, int bakit) void setrect(lpoint3d &in p0, lpoint3d &in p1, int) void settri(point3d &in p0, point3d &in p1, point3d &in p2, int bakit) void setsector(point3d &in p, int &p2, int n, float thick, int dacol, int bakit) void setspans(vspans@ lst, int lstnum, lpoint3d &in offs, int dacol) void setheightmap(const uint8 &in hbuf, int hpitch, int hxdim, int hydim, int x0, int y0, int x1, int y1) void setkv6(vx5sprite &in spr, int dacol) (untested!)
void sethull3d(point3d &in p, int nump, int dacol, int bakit) void setlathe(point3d &in p, int numcurs, int dacol, int bakit) void setblobs(point3d &in p, int numcurs, int dacol, int bakit) void setfloodfill3d(int x, int y, int z, int minx, int miny, int minz, int maxx, int maxy, int maxz) void sethollowfill() void setkvx(const string &in filename, int ox, int oy, int oz, int rot, int bakit) (might add this) void setflash(float px, float py, float pz, int flashradius, int numang, int intens) void setnormflash(float px, float py, float pz, int flashradius, int intens)
void updatebbox(int x0, int y0, int z0, int x1, int y1, int z, int csgdel) void updatevxl() void genmipvxl(int x0, int y0, int x1, int y1) void updatelighting(int x0, int y0, int z0, int x1, int y1, int z1) void evilquit(const string &in text)
void checkfloatinbox(int x0, int y0, int z0, int x1, int y1, int z1) void startfalls() void dofall(int i) int meltfall(vx5sprite &out spr, int fi, int delvxl) void finishfalls()
(callbacks, for vx5.colfunc) long curcolfunc(lpoint3d &in); long floorcolfunc(lpoint3d &in); long jitcolfunc(lpoint3d &in); long manycolfunc(lpoint3d &in); long sphcolfunc(lpoint3d &in); long woodcolfunc(lpoint3d &in); long pngcolfunc(lpoint3d &in); long kv6colfunc(lpoint3d &in);
void voxbackup(int x0, int y0, int x1, int y1, int tag) void voxdontrestore() void voxrestore() void voxredraw()
void kpzload(const string &in file, int &out pic, int &out pitch, int &out xsiz, int &out ysiz) void kpgetdim(uint8 *buf, int leng, int &out xsiz, int &out ysiz) int kprender(uint8 *buf, int leng, int frameptr, int pitch, int xdim, int ydim, int xoff, int yoff)
int kzaddstack(const string &in zipfile) void kzuninit() int kzopen(const string &in file) int kzread(void *mem, int bytes) int kzfilelength() int kzseek(int offset, int whence) int kztell() int kzgetc() int kzeof() int kzclose()
void kzfindfilestart(const string &in file) int kzfindfile(uint8 *)
-- sysmain API
type PALETTEENTRY type validmodetype
global const double dtotclk
(WIN32 related stuffs) global HWND ghwnd global HINSTANCE ghinst HDC startdc() void stopdc() void ddflip2gdi() void setalwaysactive(int alwaysactive) void smartsleep(int ms) int canrender() global int ddrawuseemulation global int ddrawdebugmode void debugdirectdraw() int peekwindowproc(HWND, UINT, WPARAM, LPARAM) [callback]
global int cputype (should I include this?) void setacquire(int mouse, int keyboard)
global string prognam global int progresiz void quitloop()
global int xres, yres, colbits, fullscreen, maxpages global PALETTEENTRY pal[256] int startdirectdraw(int &out frameptr, int &out pitch, int &out xres, int &out yres) void stopdirectdraw() void nextpage() void clearscreen(int color) void updatepalette(int start, int danum) int getvalidmodelist(validmodetype **validmodelist) int changeres(int xres, int yres, int colbits, int fullscreen)
global uint8 keystatus[256] • uint8 get_keystatus(int key) • void set_keystatus(int key, uint8 status) global uint8 ext_keystatus[256] • uint8 get_ext_keystatus(int key) • void set_ext_keystatus(int key, uint8 status) int readkeyboard() int keyread()
global uint8 ext_mbstatus[8] global int ext_mwheel global int mousmoth global float mousper void readmouse(float &out mousex, float &out mousey, int &out buttons) int ismouseout(int x, int y) void setmouseout(void mouseout(long, long) [callback], int, int);
void readklock(double &out time) (i might add this in, but you can access time by accessing global var dtotclk)
here's the download link: voxscript and a bare bones script, ken silverman-style: basic.as
Edit: and for the hell of it, a version that supports 1024x1024x256 maps. it can't load AoS maps, though, and I don't know of any program that can edit this size of map.. voxscript1024 January 03, 2017, 12:37:47 PM HST
I think I can save us all some time: appeal denied January 13, 2017, 01:59:38 AM HST
1
a client thing
well, this is a bit late, but better late than never... right? :)
as some of you might know, the last 5-ish months, I've been secretly* working on a 0.75-compatible voxlap-based AoS client. as it turns out, it kind of helps to have proper foresight for that kind of project, and planning out what I needed to do was almost the direct opposite of what I did when I started it. oops. yeah, the codebase kinda quickly became a huge tangley mess of C++-ified spaghetti C code, which as you might imagine, is not very good for productivity in general, let alone long-term maintenance.
so, I've basically stopped working on it because of that. well, that, and the fact that it's voxlap, so it's not exactly cross-compatible (unless you use sonarpulse's hack of a project, but let's be real here...), or flexible enough for my personal needs... but fear not, for I have started development on Yet Another OpenGL Voxel Engine™, and this time I've done (hopefully..) proper planning :)
* unless you know Rhodo, then it's probably not so secret to you. lol
Spoiler for what proper planning means:
if you put aside the programming side of things...
it means it WON'T look or feel like OpenSpades. it'll be more like the AoS 1.0 alpha. you know, this awesome thing? ↓↓↓
looks awesome, right? yeah, I know. :) once again, not like OpenSpades. OpenGL doesn't have to mean lens flares, dust clouds, and water ripples. ugh
an outdated video, but it still mostly represents what this client can do:
the point of this whole thread: client devs in AoS community are not dead. or, uh... there's a new one? idk. stay tuned, I guess.
Edit: here's a download link for the client. default server is the best server, tug of war. be warned, babel will probably auto kick you (and any server with bdpatch installed). I'm not entirely sure why, but I know for a fact that it's a client-side issue, and the spaghetti codebase makes that kinda hard to fix. sorry.
January 27, 2017, 02:45:03 PM HST