Welcome, Guest |
You have to register before you can post on our site.
|
Online Users |
There are currently 306 online users. » 0 Member(s) | 304 Guest(s) Bing, Google
|
|
|
Your thoughts on SAMP 0.3.DL compatibility |
Posted by: Media - 2020-04-15, 02:15 AM - Forum: Development Updates
- Replies (46)
|
 |
Questions were asked recently about 0.3.DL compatibility with open.mp (thank you Manyula and dreftas for submitting these) and we were going to save this one for the Q&A, but thought it deserved its own thread as we would like?community input on this topic.
Will open.mp be compatible with 0.3.DL?
This is the discontinued release that included server-side custom models.
The answer is simple - if the majority?will use it then yes. If they?won't, then no.
We believe that SAMP 0.3.DL was discontinued because the big?servers in general?weren't using it, however, we also believe that the reason the big?servers weren't using it was because it was not officially supported by the SAMP dev team. So it was?a bit of a chicken-and-egg situation - it wasn't supported because no one was using it, but no one was using it because it wasn't supported.
So what do you guys want?
Is there enough community support for DL features?
Are you a server owner or developer who would only switch to open.mp if these features existed?
Please vote in the poll, and also leave a comment below with your opinions!
Don't forget you have a few more days to ask your burning questions about open.mp for our Q&A post!?https://www.burgershot.gg/showthread.php?tid=1035
![[Image: qsebnEb5vsA.jpg]](https://pp.userapi.com/c834402/v834402286/149c7/qsebnEb5vsA.jpg)
image from gold?roleplay -?posted by user?Arsenka123 on the SAMP forum
|
|
|
[Gu?a] Como crear comandos con ZCMD y sscanf2 |
Posted by: SKainer - 2020-04-15, 12:07 AM - Forum: Programaci?n
- Replies (4)
|
 |
[Presentaci?n]
?Hola a todos! Vengo aqu? a presentar otra gu?a creada por m? para algunos novatos iniciando en el mundo del Pawn.
[?Qu? es ZCMD]
ZCMD es un?procesador de comandos muy efectivo y r?pido usado por much?simos servidores para una mejor?optimizaci?n.
[?Qu? es sscanf2]
sscanf2 (Plugin) es un usualmente usado como?procesador de par?metros que trabaja muy bien de la mano de ZCMD.
[?C?mo usar ZCMD?]
ZCMD puede ser usado de las siguientes formas:
PHP Code: zcmd(comando, playerid, params[])
{
// C?digo
return 1;
}
CMD:comando(playerid, params[])
{
// C?digo
return 1;
}
COMMAND:comando(playerid, params[])
{
// C?digo
return 1;
}
command:comando(playerid, params[])
{
// C?digo
return 1;
}
Todas se escriben diferente, pero tienen el mismo resultado.
[Nota Importante] ZCMD no debe ir dentro de una funci?n o callback.
[Nota Importante] ZCMD siempre debe retornar verdadero (return 1) al final, como se muestra en los ejemplos o si no aparecer? el mensaje "Unknown Command" cuando se introduzca el comando.
Ejemplo de uso:
PHP Code: CMD:mensaje(playerid, params[])
{
SendClientMessage(playerid, -1, "Este es un mensaje");
return 1;
}
Funciona como si fuera una funci?n, al menos as? lo veo yo.
Ahora, incluyamos a sscanf2 y por qu? va de la mano con ZCMD.
[?C?mo usar SSCANF2?]
La sint?xis de sscanf2 ser?a algo as?:
Code: sscanf(const data[], const format[], ...)
const data[] = Ah? ir?a la data constante, es decir, la informaci?n constante que se introdujo, en este caso (ZCMD), usamos "params"
const format[] = Aqu? van los especificadores?(integers, floats, strings, etc) que se introducir?n en los par?metros.
... = aqu? se ponen las variables de los par?metros
PHP Code: CMD:dardinero(playerid, params[])
{
? ?new idjugador, dinero;
? ?if(!sscanf(params, "ud", idjugador, dinero))
? ?{
? ? ? ?GivePlayerMoney(idjugador, dinero);
? ?}
? ?return 1;
}
Ahora, ??Qu? acaba de pasar aqu??! Pasamos de ver sint?xis a un comando normal. Pues bueno, ahora explico qu? pasa.
Fijemonos en estas?l?neas:
PHP Code: new idjugador, dinero;
if(!sscanf(params, "ud", idjugador, dinero))
As? se usa usualmente el sscanf. Efectivamente usamos una condicional para que suceda lo siguiente:
si los par?metros (params) son la id de un jugador y numeros?integer, retornaremos verdadero.
?Qu? es "ud"?
Son especificadores de datos, "u" ser?a la id de un jugador (o nombre) y "d" ser?a un integer.?
En "(params, "ud", idjugador, dinero)" podemos ver que tambi?n tenemos 2 variables (que creamos anteriormente) y ?qu? son? Pues son esos mismos datos especificados. Es decir, "u" es "idjugador"? y "d" es "dinero", osea, idjugador es la id de un jugador y dinero es un integer. Es un poco confuso pero es entendible, tambi?n podemos observar que puse "!sscanf", qu? es este operador?(!)? Lo usamos para que tome un valor contrario, ya veremos para qu?.
Entonces tenemos la funci?n?
Code: GivePlayerMoney(playerid, money) // Funci?n por defecto
GivePlayerMoney(idjugador, dinero); // Reemplazamos nuestra ID (playerid) por la ID del jugador que elijamos en los par?metros, y (money) por "dinero", que ser?a la cantidad de dinero (Entero) que especificamos en los par?metros.
Imagina que tu jugador escribe:
/dardinero 6?1000?(6?ser?a la ID del jugador al que se le dar? dinero) (1000 es la cantidad de dinero que se le dar? a la id del jugador)
Todo eso suceder?a en un comando, s?lo usa tu imaginaci?n para crear todos los comandos y par?metros que desees.
Imagina que un jugador escribe /dardinero 6 d (El jugador escribe un string y no un integer, eso no har? nada)?
Ahora c?mo le decimos al jugador que los par?metros que est? poniendo son inv?lidos?
Pues atento a lo siguiente:
PHP Code: CMD:dardinero(playerid, params[])
{
? ?new idjugador, dinero;
? ?if(!sscanf(params, "ud", idjugador, dinero))
? ?{
? ? ? ?GivePlayerMoney(idjugador, dinero);
? ?}
? ?else SendClientMessage(playerid, -1, "Haz escrito mal el comando, usa /dardinero (id) (cantidad)");
? ?return 1;
}
Con eso cu?ndo el jugador se equivoque de comandos retornar? el mensaje que pusimos, para que se d? cuenta que est? poniendo mal los par?metros indicados.
[Nota]?Tambi?n existe la funci?n "unformat" que viene con el sscanf2 por defecto, que act?a igual que la funci?n sscanf.
[Final]
Bueno, eso ha sido todo?lo que puedo aportar hasta ahora, si me equivoqu? en algo o expliqu? algo mal h?ganmelo saber.?
- SKainer
|
|
|
Group law cars |
Posted by: homelessdrop - 2020-04-14, 11:58 PM - Forum: Support
- Replies (3)
|
 |
Hey guys, i need a help with function, where i can preserve all police vehicles id's for requirement when i can call permissions. Code: GetVehicleModel(GetPlayerVehicleID(playerid));
Example Code: if(newstate == PLAYER_STATE_DRIVER && GetVehicleModel(GetPlayerVehicleID(playerid) == 596
Code: if(newstate == PLAYER_STATE_DRIVER?&& idkAllPoliceCar ...
Thanks.
|
|
|
UPDATES, Q&A, SOCIAL MEDIA, ONE YEAR ANNIVERSARY! |
Posted by: Media - 2020-04-14, 11:46 AM - Forum: Development Updates
- Replies (15)
|
 |
HAPPY ANNIVERSARY! ????1??
This week is officially ONE YEAR since we came together to start building open.mp!
Our devs have been working hard around their busy everyday lives and full-time jobs to get the core of the project built, and we are hoping to have it ready for public testing very soon!
We are launching our official social media accounts today, with the intention of giving much more frequent updates, community interaction, and more general open-ness about the project. So follow us to stay up to date! ??
A little look at the modules we've completed so far:
?? Actors
?? Camera
?? Checkpoints
?? Classes
?? Dialogs
?? Legacy Plugins
?? Map
?? Menus
?? Net Stats
?? Objects
?? PAWN
?? Pickups
?? Text 3D
?? Textdraws
?? Timers
?? Vars
?? Vehicles
We have removed all limits - no streamers are required. This means that OMP servers will be able to use unlimited objects, icons, checkpoints, and vehicles!
We also have a brand spankin' new API which will enable other languages to be added to servers easily!
WHAT DO YOU WANT TO KNOW ABOUT OPEN.MP?
Ask your questions below, and we'll do a big Q&A post later in the week where we answer them!
Make sure you join our forum and follow us on social media to get the latest news and updates from our team!
??????????????????????
Quote:?? Website:?
https://www.open.mp/
?? Progress log:?
https://www.open.mp/progress
?? Blog:?
https://www.open.mp/blog
?? Forum:
http://burgershot.gg
?? Facebook:
http://facebook.com/openmultiplayer
?? Twitter:?
http://twitter.com/open_mp?
(this name is temporary, but follow it now and you'll still be following the correct account when the name changes!)
?? Instagram:?
http://instagram.com/openmultiplayer
?? GitHub:?
https://github.com/openmultiplayer
See you soon for testing!
Love,
The open.mp team ??
|
|
|
?C?mo ser? el tema de la seguridad? |
Posted by: keloke - 2020-04-09, 12:46 AM - Forum: Offtopic
- Replies (1)
|
 |
Leyendo posts en este foro, v? que develops y colaboradores del proyecto dicen que la seguridad no depender? del software, sino de los usuarios (empresas). ?Esto es as?? Sinceramente, abrir open.mp y no solucionar una de las m?s fallas que tiene la plataforma SAMP no le veo sentido.
Estar?a bueno que solucionasen este problema, ya que si atacan en SA:MP tambi?n lo har?n en OPEN.MP
|
|
|
Video-Aulas no Youtube |
Posted by: Chainksain - 2020-04-07, 12:56 AM - Forum: Portuguese/Portugu?s
- Replies (3)
|
 |
Video-Aulas no Youtube
Ol?, estou fazendo uma serie de tutoriais onde estarei ensinando um pouco sobre como programar um gm de samp, meus videos s?o para aqueles que est?o ingressando na comunidade e j? tem ao menos um conhecimento de l?gica de programa??o b?sica mas que nunca tiveram um contato com programa??o na pr?tica ou n?o conhecem nenhuma linguagem de programa??o, alguns v?deos tamb?m podem vir a ser interessante para aqueles que j? possuem certa experiencia mas ainda n?o dominam completamente ou n?o se sentem confort?veis no ambiente de desenvolvimento para samp. Estes v?deos tamb?m podem ser complementares aos v?deos do PauloR que est?o dispon?veis aqui.
Se quiser acompanhar o lan?amento dos v?deos se increva no meu canal: https://www.youtube.com/channel/UCyWCdp8TBPeFWhU9AT9E7Mg
|
|
|
sampctl support |
Posted by: George - 2020-04-05, 06:44 PM - Forum: Support
- No Replies
|
 |
Hello,
I want to add?sampctl support in my?github repository.
I am not aware if it is?possible to move from releases page on github to scriptfiles folder so I started searching. I found a few results:
https://github.com/Southclaws/sampctl/issues/57
https://github.com/Southclaws/sampctl/issues/292
https://github.com/Southclaws/sampctl/wi...n-Packages
Specifically:
Code: // some plugins require additional libraries (MySQL is a good example)
// so this field allows you to specify any additional files where the key
// is the path inside the archive and the value is the target path for
// when it gets extracted to the server directory. Most of the time,
// additional shared objects/DLLs should be in the same directory as the
// SA:MP server executable so there is no need to specify any additional
// directories in the value string.
"files": {
? ? "deps/libcurl.dll": "libcurl.dll"
}
But any help would be appreciated.
|
|
|
td-notification |
Posted by: ThePez - 2020-04-05, 06:37 PM - Forum: Libraries
- Replies (1)
|
 |
td-notification
![[Image: 68747470733a2f2f696d672e736869656c64732e...6261646765]](https://camo.githubusercontent.com/e46d54ec786003142962f31c6920939e59a13ee1/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f73616d7063746c2d74642d2d6e6f74696669636174696f6e2d3266326632662e7376673f7374796c653d666f722d7468652d6261646765)
This Include allows you to create TextDraw Notifications
![[Image: 68747470733a2f2f692e6962622e636f2f704c48...382e706e67]](https://camo.githubusercontent.com/531f66ed78403e7a0c4e79e618633786801cf0b5/68747470733a2f2f692e6962622e636f2f704c48333848302f73612d6d702d3932382e706e67)
Installation
Simply install to your project:
Code: sampctl package install ThePez/td-notification
Include in your code and begin using the library:
Code: #define TDN_MODE_DEFAULT
#include <td-notification>
Usage
- MAX_TDN: set how many TextDraw will be shown in TextDraw's Notification
- TDN_POS_X: TextDraw notifications will be at the position set on the X axis
- TDN_POS_Y: TextDraw notifications will be at the position set on the Y axis
- TDN_FONT: TextDraw Notification will have the set font
- TDN_LETTER_SIZE_X: TextDraw notifications will have the set font size on the X axis
- TDN_LETTER_SIZE_Y: TextDraw notifications will have the set font size on the Y axis
- TDN_SIZE: TextDraw notifications will have the set width size
- TDN_COLOR: TextDraw notifications will have the set font color
- TDN_COLOR_BOX: TextDraw notifications will have the set box color
- TDN_PROPORTIONAL: TextDraw notifications will have the set proportional
- TDN_DISTANCE: TextDraw notifications will have the set distance
- MAX_TDN_TEXT: TextDraw notifications will have a maximum the set text
- TDN_MODE_DOWN: TextDraw notifications will scroll down
- TDN_MODE_UP: TextDraw notifications will scroll up
- TDN_TIME: TextDraw notifications will hide at the set time
- TDN_MODE_DEFAULT: TextDraw notifications will use the default settings
Function
Code: ShowTDN(playerid, const reason[], hide = -1);
Shows a textdraw with the set text- If you pass the?hide?parameter, the same thing will return (this is the id of the TextDraw)
Normal functioning: the TextDraw will be automatically hidden, with the time set in?TDN_TIME (no need to use?HideTDN)
- Returns 1, if the textdraw is shown, perfectly
- Returns 0, if the text drawing could not be displayed (there are as many TextDraws displayed as set in?MAX_TDN)
Code: HideTDN(playerid, TDN);
Hides the textdraw
You must pass the id that returned the function ShowTDN
- Returns 1, if the textdraw was hidden, perfectly
- Returns 0, if the id passed in the function was not found
Testing
To test, simply run the package:
Credits- ThePez?- Creator of the include
- NaS?- helped me gather information to make the include, also helped me somewhere in the code
- Kristo?- Creator of the?samp-td-string-width?include, it helped me to calculate the width of the TextDraw
- Y_less?- Creator of the?YSI?include
https://youtu.be/8QKCcM6X14w
|
|
|
|