[UT] Plugin voor aansturing van leds

Pagina: 1
Acties:

  • Meelobee
  • Registratie: November 2001
  • Laatst online: 16:42

Meelobee

¯\_(ツ)_/¯

Topicstarter
Ik heb dit ook gevraagd in Casemods en Electronica, daar werd me aangeraden om het hier te vragen, dus bij deze.
Meelobee schreef op 04 september 2002 @ 10:06:
Is het misschien mogelijk om voor Unreal Tournament een mod(plugin) te maken zodat als je een frag maakt in het spel er een ledje gaat knipperen?

Zou dit bijvoorbeeld kunnen door een plugin/mod voor UT te maken en deze een "signaal" naar de com/paralelle poort te laten sturen, waaraan je dan een ledje hangt?

Ik heb totaal geen idee hoe dit te doen is (en of het uberhaupt kan) maar het zou wel cool zijn om bv een rode led te laten knipperen als je een frag maakt.
Ik heb zelf totaal geen verstand van het maken van mods voor UT dus alle hulp is welkom. :)

@MrBee_RC


  • Gerco
  • Registratie: Mei 2000
  • Laatst online: 30-08 17:59

Gerco

Professional Newbie

Het is mogelijk. Je kunt een mod maken in UT die een native DLL aanroept (voor die mod) die een signaaltje naar je LPT stuurt (vanuit UScript kun je geen native zooi doen, daar zijn dll's voor).

Alleen gaat dat niet online werken, niet op anti-cheat servers tenminste, want jij draait dan een andere versie van bepaalde packages als de server en dat vinden ze niet goed.

- "Als ik zou willen dat je het begreep, legde ik het wel beter uit!" | All number systems are base 10!


  • johnwoo
  • Registratie: Oktober 1999
  • Laatst online: 21:46

johnwoo

3S-GTE

Ik denk dat UnrealScript je geen mogelijkheden geeft om hardware aan te sturen. Maar, je kan UnrealScript wel laten samenwerken met bijvoorbeeld C++ code in DLL's. Dit is wel vrij lastig, omdat je dan te maken krijgt met de state-georienteerde eigenschappen van UnrealScript (die in UnrealScript zelf enorm makkelijk zijn, maar om te koppelen vrij ingewikkeld).
Ik zou zeggen, kijk even op http://unreal.epicgames.com/ onder Programming.

4200Wp ZO + 840Wp ZW + 1680Wp NW | 14xIQ7+ + 1xDS3-L | MTVenusE | HWP1


  • raptorix
  • Registratie: Februari 2000
  • Laatst online: 17-02-2022
Tijdje terug was er een Q3 CTF clan die allemaal mexicaanse hoeden hadden met een zwaailicht erop, bij elke Cap gingen al die zwaailichten draaien, weet niet of dat automatisch ging maar cool was het wel :)

Verwijderd

Zal wel lache zijn zo'n zwaailicht... Als je vlag word gepakt dan gaat dat licht aan >:)

  • Gerco
  • Registratie: Mei 2000
  • Laatst online: 30-08 17:59

Gerco

Professional Newbie

raptorix schreef op 04 september 2002 @ 13:57:
Tijdje terug was er een Q3 CTF clan die allemaal mexicaanse hoeden hadden met een zwaailicht erop, bij elke Cap gingen al die zwaailichten draaien, weet niet of dat automatisch ging maar cool was het wel :)
Lijkt me realistisch dat ze gewoon een knopje ervoor hadden, automagisch kan wel (in Q3 misschien wel beter dan in UT, want dan moet je gelijk native proggen), maar lijkt me onwaarschijnlijk vanwege het werk wat je ervoor moet doen om je gemodde exe nog online te kunnen gebruiken.

- "Als ik zou willen dat je het begreep, legde ik het wel beter uit!" | All number systems are base 10!


Verwijderd

Gewoon met Qstat de game info opvragen? en op het moment dat er een frag bij komt bij iemand pinnejte op lpt hoog zetten, moet niet zo'n punt zijn lijkt me?

  • packman
  • Registratie: November 2000
  • Laatst online: 17-12-2024
Yarvieh - gaat dat niet iets te netwerkintensief zijn? Dan moet je een paar keer per seconde gaan refreshen ofzo...

I heard if you play the XP CD backwards, you get a satanic message. Thats nothing compared to what happens if you play it forward, then it installs Windows XP born2oc.be - Facts Of Life


  • Gerco
  • Registratie: Mei 2000
  • Laatst online: 30-08 17:59

Gerco

Professional Newbie

Verwijderd schreef op 04 september 2002 @ 14:45:
Gewoon met Qstat de game info opvragen? en op het moment dat er een frag bij komt bij iemand pinnejte op lpt hoog zetten, moet niet zo'n punt zijn lijkt me?
Kan wel, maar dan zou je de server elke seconde moeten queryen ofzo... krijgt 'ie het daar niet een beetje druk mee?

- "Als ik zou willen dat je het begreep, legde ik het wel beter uit!" | All number systems are base 10!


Verwijderd

Alle lcd apps doen 't ook zo momenteel dus guess dat er mee te leven valt ;)

  • Creepy
  • Registratie: Juni 2001
  • Laatst online: 20:12

Creepy

Tactical Espionage Splatterer

En als de load te groot word, dan zullen ze vast wel een manier bedenken om de machines te blokken die alleen maar willen query'en ;)

Als je het server side doet lijkt me een oplossing m.b.v. Unreal script en een DLL het beste... client side... tja... m.b.v. QStat (of een eigen progje dat de stats opvraagt) waarschijnlijk, want je wilt natuurlijk niet dat je door je eigen stukje code op verschillende servers word geweigerd.

"I had a problem, I solved it with regular expressions. Now I have two problems". That's shows a lack of appreciation for regular expressions: "I know have _star_ problems" --Kevlin Henney


  • raptorix
  • Registratie: Februari 2000
  • Laatst online: 17-02-2022
Qstat is niet nodig ;) Heb zelf een stukje perl geschreven die UT server info parsed ;)

code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
#!/usr/bin/perl -w

use IO::Socket;
sub getplayerinfo($$){
    my ($peeraddr,$port) = @_;
    my $sock = new IO::Socket::INET (
                       PeerAddr => $peeraddr,
                       PeerPort => $port,
                       Proto => 'udp',
                     );
    die "Could not create socket: $!\n" unless $sock;
    $sock->send("\\players\\");
    $sock->recv(my $line, 1000);

    my @players = split /\\/,$line;
    my @result;
    while (@players > 16){
    my @temp = splice(@players,0,17,'');
    push @result, [@temp];
    }
    close($sock);
    return @result;
}
    my @players = getplayerinfo('195.149.21.73','7808');
    my $i;
    my $playerlength = 10;
    my $fragslength = 5;
    
    for $i ( 0 .. $#players ) {
        if(length($players[$i][2]) > $playerlength){
        $playerlength = length($players[$i][2]);
        }
        if(length($players[$i][4]) > $fragslength){
        $fragslength = length($players[$i][4]);
        }
    }

    my $playerspace = $playerlength - 10;
    my $fragsspace = $fragslength - 5;
    
    print 'Playername ' . " " x $playerspace .  'Frags ' . " " x $fragsspace .  'Ping ' . "\n";

    for $i ( 0 .. $#players ) {
    my $playerspace = $playerlength - length($players[$i][2]);
    my $fragsspace = $fragslength - length($players[$i][4]);
    print $players[$i][2] .  " " x $playerspace .  $players[$i][4] . " " x $fragsspace .  $players[$i][6]  . "\n ";
    }
Pagina: 1