SA-MP 0.3.7 RC (now released)

RockStar is on the wrong side in my opinion, it's SA-MP which made their game very popular, but they have to be whiney about it. Yeah hot coffee they say, blame it for that, just because of a few people on the internet which can't hold their dicks properly, RockStar completely bans modding support and we are the ones to suffer the damage from it. It's just stupid.
Reply

Quote:
Originally Posted by zeax
Посмотреть сообщение
Here is MTA synced AI (also shows the possibilities with it)

http://www.youtube.com/watch?v=STx9v9H_J18
Skip to around 0:30

But yeah, that's just a response to your statements. I love SA-MP and let's stick on topic!
Yet you keep talking about MTA.

Quote:
Originally Posted by Kalcor
Посмотреть сообщение
That's enough discussion about other mods. This is my RC thread for SA-MP 0.3.7.
Reply

I astill think a function to set the actor's syncer would solve it all.
Reply

Quote:
Originally Posted by Kar
Посмотреть сообщение
I astill think a function to set the actor's syncer would solve it all.
There is still the issue that you can not trust the player syncing the NPC (might sent malicious data) and you can not assume the player is in range all the time and not tabbed out, and not in the menu and so forth.

The only way I can think of but with a whole lot of work,
is sending the position of the NPC to the clients, and letting NPCs only move linearly. The clients receive the position of the NPC and where he is moving to, and calculate the ground height it would be standing on (this value is only used on their client side). The server in the meanwhile assumes it takes a straight linear path and calculates the approximated position based on a set speed. When other clients stream the NPC in, this position would be sent to the client, with the position the NPC is moving to.
This would however require a whole new NPC system, since this doesn't work in the way the existing system works.

But then again, like he said, Kalcor has much more experience with this than many (if not all) of us and would probably have considered all options already.

I also think that the appreciation/effort ratio is darn low for this sort of thing.
Reply

I think it would be good to add an option to find servers, similar to "Not full, Not empty, No password" allowing something like this:

Find servers with lagcomp off
Find servers with lagcomp on

It would not be the BIG thing but it is annoying having to check each server (in case you want to play with lagcomp off)
Reply

Well I have a method of doing player draw distances using the YSF plugin however for efficiency I will be waiting for the 0.3.7 release along with an according update to YSF. So basically this can be done through PAWN and modifying packets.
Reply

Kalcor, before you release 0.3.7, could you please fix the text draw positioning bug on different resolutions, or simply add a GetPlayerResolution function so that we can fix it ourselves?
It's so annoying with clipping and spacing occurring when trying to create stats bars, etc. that fit together.

Reply

Quote:
Originally Posted by Kalcor
View Post
I have now been involved in developing MP mods for GTA for 12 years. If you somehow know more than I do, go and write your own multiplayer mod.
This is something everyone should read. Some of you are incredibly annoying and take everything for granted, you expect it to be easy when Kalcor has been working in this project for over ten years (guess who wrote VC-MP 11 years ago?) using only reverse engineering. Some of you should learn to appreciate what you're giving instead of acting you're smart as fuck when you probably can't code a arithmethic calculator in Visual Basic.

If you don't like it, don't pester the developer. Maybe if you were paying for it you'd have the right but SA-MP is free, and it always has been. If you want something better, simply hope (but don't demand) it gets done or make your own mod and stop being an annoying kid.
Reply

Quote:
Originally Posted by Catalyst-
Посмотреть сообщение
Kalcor, before you release 0.3.7, could you please fix the text draw positioning bug on different resolutions, or simply add a GetPlayerResolution function so that we can fix it ourselves?
It's so annoying with clipping and spacing occurring when trying to create stats bars, etc. that fit together.

There is already a GetPlayerResolution function, and it works perfectly. The hardest part is adjusting each textdraw so good luck with that.

Код:
switch(GetPlayerCameraAspectRatio(playerid))
{
	case 1.3 .. 1.35: //screen ratio is 4:3
	case 1.5: //screen ratio is 3:2
	case 1.6: //screen ratio is 16:10
	// And the rest of the aspect ratios
}
And BTW, that problem only occurs when you use decimal screen positions. Always use rounded coordinates for textdraw positions.
Reply

Quote:
Originally Posted by Catalyst-
Посмотреть сообщение
Kalcor, before you release 0.3.7, could you please fix the text draw positioning bug on different resolutions, or simply add a GetPlayerResolution function so that we can fix it ourselves?
It's so annoying with clipping and spacing occurring when trying to create stats bars, etc. that fit together.

Yeah, would be cool. +1
Reply

Not necessary, textdraws should be suitable for all resolutions without needing adjustments or you're doing it wrong.
Reply

Quote:
Originally Posted by Crayder
Посмотреть сообщение
There is already a GetPlayerResolution function, and it works perfectly. The hardest part is adjusting each textdraw so good luck with that.

switch(GetPlayerCameraAspectRatio(playerid))
{
case 1.3 .. 1.35: //screen ratio is 4:3
case 1.5: //screen ratio is 3:2
case 1.6: //screen ratio is 16:10
// And the rest of the aspect ratios
}
So how we can get needed textdraw position using this function? Do you know any formula to get textdraw position for any screen resolution?

Sorry for my bad English.
Reply

Quote:
Originally Posted by Abagail
Посмотреть сообщение
Not necessary, textdraws should be suitable for all resolutions without needing adjustments or you're doing it wrong.
Its very necessary, textdraw boxes are completely disaligned when you change resolution, it looks weird specially boxes, it's not a creation problem, they should be adjusted automatically according to players resolution.
Reply

Quote:
Originally Posted by stabker
Посмотреть сообщение
So how we can get needed textdraw position using this function? Do you know any formula to get textdraw position for any resolution?

Sorry for my bad English.
Like I said before you quoted me, using rounded off screen positions will fix this.

Example:
Instead of 4.1 try rounding it off to 4.0.

Of course, it's hard to design things with only a 640x480 board but that's the easiest way to make it cross-compatible. You could use what I showed you above to get a players screen size and do a bunch of math and crap to make the textdraws right, but it's a lot easier to round things off.
Reply

Where can one find this "GetPlayerResolution" function? The only usable function I've seen relating to this lies inside KingHaul's SAMP plus plugin.
Reply

Quote:
Originally Posted by Abagail
Посмотреть сообщение
Where can one find this "GetPlayerResolution" function? The only usable function I've seen relating to this lies inside KingHaul's SAMP plus plugin.
GetPlayerCameraAspectRatio

It's all you need for adjusting to multiple resolutions. The resolutions are not the problem with textdraws, its the different aspect ratios.

But however I do have a suggestion. I think it would be a lot better to have a larger table than 640x480 for textdraws. Really even 6400x4800 would work better, our textdraws could be a lot more accurate (10x more accurate) across different resolutions this way.
Reply

Quote:
Originally Posted by Crayder
Посмотреть сообщение
There is already a GetPlayerResolution function, and it works perfectly. The hardest part is adjusting each textdraw so good luck with that.

Код:
switch(GetPlayerCameraAspectRatio(playerid))
{
	case 1.3 .. 1.35: //screen ratio is 4:3
	case 1.5: //screen ratio is 3:2
	case 1.6: //screen ratio is 16:10
	// And the rest of the aspect ratios
}
And BTW, that problem only occurs when you use decimal screen positions. Always use rounded coordinates for textdraw positions.
Aspect ratio and resolution are not the same thing. 1920x1080 and 1600x900 have the same aspect ratio, but the text draws' position will differ on both. Thus there is no way to fix the positioning/size between those resolutions using the aspect ratio.
It doesn't only occur when using decimal screen positions. Here's the code for the text draws used in the picture:
pawn Код:
new Float:x = 150, Float:y = 200;
for(new i = 0; i != sizeof(textdraw); i++) {
    textdraw[i] = TextDrawCreate(x, y+ (12*i), "_");
    TextDrawTextSize(textdraw[i], x+ 40+ (40*i), 0);
    TextDrawLetterSize(textdraw[i], 0, 0.95);
    TextDrawUseBox(textdraw[i], 1);
    TextDrawBoxColor(textdraw[i], 0x00000080);
}
@Abagail I suggest you try this out yourself.
Reply

Quote:
Originally Posted by Catalyst-
Посмотреть сообщение
Aspect ratio and resolution are not the same thing. 1920x1080 and 1600x900 have the same aspect ratio, but the text draws' position will differ on both.
Actually you should test this theory of yours. The only thing that causes differences in textdraw positions is the aspect ratio. The base aspect ratio is 4:3 because textdraws are based on a 640x480 resolution, so working on 16:9 aspect will causes dislocations in your positions because textdraws are not stretched across resolutions.

EDIT: Btw, the only actual correct one of your three examples is the middle one, the one on the 4:3 resolution.
Reply

Quote:
Originally Posted by Crayder
Посмотреть сообщение
Actually you should test this theory of yours. The only thing that causes differences in textdraw positions is the aspect ratio. The base aspect ratio is 4:3 because textdraws are based on a 640x480 resolution, so working on 16:9 aspect will causes dislocations in your positions because textdraws are not stretched across resolutions.

EDIT: Btw, the only actual correct one of your three examples is the middle one, the one on the 4:3 resolution.
I have tested it many times on different resolutions which share the same aspect ratio.
Here's another example:
1600x1200 and 800x600 have the same aspect ratio (1.33 or 4:3), but will show a huge difference in positions.

Reply

Quote:
Originally Posted by Kalcor
View Post
If they did it is most likely like SA-MP's 0.2.5 actor system and not properly synced for all players.



There are comments from Rockstar North developers in MTA's code. Don't expect me to point out where though because I'm not in to naming names. There are also structures, class names that could not have been obtained from anywhere but the GTA:SA source code.

I know a lot more about this subject than I'm prepared to divulge. I don't like it when people keep posting bullshit here though.

I worked on MTA:VC from 2003 to 2004. I have now been involved in developing MP mods for GTA for 12 years. If you somehow know more than I do, go and write your own multiplayer mod.

That's enough discussion about other mods. This is my RC thread for SA-MP 0.3.7.
I checked some files, there are lot of intresting things...I removed my message, I dont like share unreal things. So sorry.
Reply


Forum Jump:


Users browsing this thread: 15 Guest(s)