Bay 12 Games Forum

Please login or register.

Login with username, password and session length
Advanced search  
Pages: 1 ... 4 5 [6] 7

Author Topic: Enough talk, get crackin'  (Read 11200 times)

Armok

  • Bay Watcher
  • God of Blood
    • View Profile
Re: Enough talk, get crackin'
« Reply #75 on: August 14, 2009, 09:57:59 am »

I wonder what would happen if someone merged this functionality into battlechamps... (that's what it's called right?)
Logged
So says Armok, God of blood.
Sszsszssoo...
Sszsszssaaayysss...
III...

darius

  • Bay Watcher
  • ^^
    • View Profile
Re: Enough talk, get crackin'
« Reply #76 on: August 14, 2009, 01:52:55 pm »

It works quite simple: finds DF window buffer and reads it, then sends it to clients. So no, client is doing nothing. You could run it on very old machines or (theoretically) on mobiles, iphones or other gadgets.

Another point would be to run it on a very powerful machine able to decypher the window buffer and re-work the graphics. Say, in an isometric way.
Do you have any information concerning the structure of the DF window buffer ?

Well that would be hard. Mainly because window buffer has no info about other levels and meanings of letters. For example if orc is an 'o' and orangutang is also 'o' (same color) you would have no way to differ which is which...
As for structure of DF window buffer:
starts somewhere (currently using 0x517A5D's hexsearch2 function to find by first few tiles), each tile 4 bytes long, column first. Buffer is allocated for biggest window ( so there are zeros and then column and zeros and so on).

I wonder what would happen if someone merged this functionality into battlechamps... (that's what it's called right?)
As for battlechamps? I don't quite get it. AFAIK it was only a test set up by Toady to test if anyone could write faster code for graphics engine. So nothing would happen. But there is graphics lib open-sourced by Toady and then improved. If I could get my head around first Git, then that code, then it could be in original DF (If no one would argue).
Logged

ProfessorA

  • Bay Watcher
  • don't close your eyes, they'll get your eyelids
    • View Profile
Re: Enough talk, get crackin'
« Reply #77 on: August 14, 2009, 02:35:49 pm »

I has no programming experience and little knowledge of running servers, but would an easy half-measure be to just make a client that forwards alert messages from the running df to the user, and only allows pause/unpause interaction?
Logged

darius

  • Bay Watcher
  • ^^
    • View Profile
Re: Enough talk, get crackin'
« Reply #78 on: August 14, 2009, 03:17:20 pm »

I has no programming experience and little knowledge of running servers, but would an easy half-measure be to just make a client that forwards alert messages from the running df to the user, and only allows pause/unpause interaction?
Can already be done with this program. (view my earlier posts) but if you want a minimalistic program to do that: yes it could be done but that's not EASY just a bit above medium I think. (won't do it, but if anyone wants to do it i'll help)

Also news:http://dffd.wimbli.com/file.php?id=1315
New viewer version! TCP->UDP change. This means speed (or so I hope didn't test it over real internet).
« Last Edit: August 14, 2009, 07:14:23 pm by darius »
Logged

Nexii Malthus

  • Bay Watcher
    • View Profile
Re: Enough talk, get crackin'
« Reply #79 on: August 15, 2009, 05:08:39 am »

Not sure that change to UDP was such a good idea.

darius

  • Bay Watcher
  • ^^
    • View Profile
Re: Enough talk, get crackin'
« Reply #80 on: August 15, 2009, 06:36:01 am »

Not sure that change to UDP was such a good idea.

Damn I think you are right...
Logged

Baughn

  • Noble Phantasm
  • The Haruhiist
  • Hiss
    • View Profile
Re: Enough talk, get crackin'
« Reply #81 on: August 15, 2009, 07:00:33 am »

UDP is unreliable, so obviously isn't a good choice for things like keyboard input that really need to get through.

However, it might be a useful idea to use UDP for sending the display, where losing a frame or two isn't a big deal.

However, a single frame is probably larger than the ~1400 byte practical maximum for UDP packets. Yes, you can send up to 64KiB in one packet, but then they get split, and the chance of losing it increases exponentially.

Summa summarum, it's probably much easier just to use TCP. Remember to flush. Oh yeah, and you should definitely use "partial-printing", sending only the changes.
Logged
C++ makes baby Cthulhu weep. Why settle for the lesser horror?

spokehedz

  • Bay Watcher
  • Boy Genius
    • View Profile
Re: Enough talk, get crackin'
« Reply #82 on: August 15, 2009, 02:52:51 pm »

Works for me on Windows 7 to a Vista computer. Not to shabby, considering how quickly it was coded.
Logged
Quote from: LordBaxter
Once a stair fell, and rather than knock him one or two z levels down, as usually was the case, he went rolling down the central staircase, hit the bottom and exploded.

CautionToTheWind

  • Bay Watcher
    • View Profile
Re: Enough talk, get crackin'
« Reply #83 on: August 30, 2009, 03:50:37 am »

Any news on this project? A revert to TCP would be greatly appreciated!
Logged

darius

  • Bay Watcher
  • ^^
    • View Profile
Re: Enough talk, get crackin'
« Reply #84 on: August 30, 2009, 08:22:16 am »

Updated:
reverted to TCP and added source. Sorry for EVIL code  :P. If you want to build it you will need:
  • Codeblocks(optional) <- my IDE, project file included
  • Boost <- I used 1.37 version, should work with others
  • LibTCOD <- interface lib, great for roguelikes
Have fun coding
Logged

CautionToTheWind

  • Bay Watcher
    • View Profile
Re: Enough talk, get crackin'
« Reply #85 on: August 30, 2009, 01:14:53 pm »

Great job, thanks. Seriously cool for netbook users!
Logged

peterix

  • Bay Watcher
    • View Profile
    • Dethware
Re: Enough talk, get crackin'
« Reply #86 on: August 30, 2009, 05:08:49 pm »

Updated:
reverted to TCP and added source. Sorry for EVIL code  :P . If you want to build it you will need:
  • Codeblocks(optional) <- my IDE, project file included
  • Boost <- I used 1.37 version, should work with others
  • LibTCOD <- interface lib, great for roguelikes
Have fun coding

Trust me, I don't mind EVIL code... It's the algorithms that I'm after. Any objections about using them in a general DF memory access library?

darius

  • Bay Watcher
  • ^^
    • View Profile
Re: Enough talk, get crackin'
« Reply #87 on: August 30, 2009, 05:48:44 pm »

Yeah sure go ahead just put me in credits:
WARMIST WAS HERE ;D (just joking)
Logged

Spoggerific

  • Bay Watcher
    • View Profile
Re: Enough talk, get crackin'
« Reply #88 on: October 16, 2009, 10:56:39 pm »

So... remote DF view doesn't work. I've tried both old versions and the current one, and they all have the same problem: Trying to connect to the server, no matter what username or password, it always closes immediately afterwards. Trying to change the username on the server doesn't work, as it just displays "OUT OF ENUM". Any ideas on what's wrong, or how to fix it?
Logged

CautionToTheWind

  • Bay Watcher
    • View Profile
Re: Enough talk, get crackin'
« Reply #89 on: October 17, 2009, 07:30:11 pm »

Doesn't work for me either.
Logged
Pages: 1 ... 4 5 [6] 7