Si buscas la IP pública de tu aparato, una forma sencilla de hacerlo es preguntárselo a una página web especializada en ello usando http_get. Por ejemplo:
Create:
HTTP:
Para ser sincero, no le veo mucha utilidad a conocer la IP pública en el contexto de las capacidades online de GM a menos que cuentes con un servidor dedicado, ya que la multitud de trabas que ponen los antivirus, S.O. y cortafuegos hacen muy difícil conseguir una conexión directa. Si buscas la IP local para usarla en un juego en red local, también hay una forma de conseguirla, aunque es un poquito más engorrosa: crear un servidor udp, mandar un broadcast con un buffer cualquiera y obtener la ip en la respuesta del evento Networking.
Create:
Evento Networking:
Las funciones de red en una red local funcionan sin problema. Una forma de salvar el problema de no poder crear una conexión via internet es usar una red privada virtual, como la que crea hamachi, y trabajar como si se estuviera en una red local.
Create:
Código [Seleccionar]
get=http_get("http://ipv4bot.whatismyipaddress.com");
HTTP:
Código [Seleccionar]
if ds_map_find_value(async_load,"id")=get
{
if ds_map_find_value(async_load,"status")=0
show_message("ip="+ds_map_find_value(async_load,"result"));//muestra la IP en un mensaje
}
Para ser sincero, no le veo mucha utilidad a conocer la IP pública en el contexto de las capacidades online de GM a menos que cuentes con un servidor dedicado, ya que la multitud de trabas que ponen los antivirus, S.O. y cortafuegos hacen muy difícil conseguir una conexión directa. Si buscas la IP local para usarla en un juego en red local, también hay una forma de conseguirla, aunque es un poquito más engorrosa: crear un servidor udp, mandar un broadcast con un buffer cualquiera y obtener la ip en la respuesta del evento Networking.
Create:
Código [Seleccionar]
host=network_create_server(network_socket_udp,64198,1);//el puerto puede ser cualquiera disponible, 64198 es sólo un ejemplo
if host>=0
{
var tsock=network_create_socket(network_socket_udp);
var tbuff=buffer_create(32,buffer_fixed,1);
network_send_broadcast(tsock,64198,tbuff,buffer_get_size(tbuff));
network_destroy(tsock);
buffer_delete(tbuff);
}
Evento Networking:
Código [Seleccionar]
ip=ds_map_find_value(async_load,"ip");
network_destroy(host);
Las funciones de red en una red local funcionan sin problema. Una forma de salvar el problema de no poder crear una conexión via internet es usar una red privada virtual, como la que crea hamachi, y trabajar como si se estuviera en una red local.