{"id":21743330,"url":"https://github.com/emagood/thot-p2p","last_synced_at":"2025-03-21T01:32:44.340Z","repository":{"id":264737102,"uuid":"894096945","full_name":"emagood/Thot-P2P","owner":"emagood","description":"This application allows P2P (Peer-to-Peer) communication between devices using different implementation methods in Godot 4.4: ENet, WebSocket, and TCP_Peer. Its main purpose is to connect devices and exchange information, data or messages","archived":false,"fork":false,"pushed_at":"2025-02-20T18:42:15.000Z","size":28443,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-02-20T19:39:05.614Z","etag":null,"topics":["e-net","godot","godot-engine","godot4","p2p","tcp-socket","websocket"],"latest_commit_sha":null,"homepage":"","language":"GDScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/emagood.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-11-25T18:42:04.000Z","updated_at":"2025-02-20T18:42:19.000Z","dependencies_parsed_at":"2025-02-20T19:33:25.431Z","dependency_job_id":null,"html_url":"https://github.com/emagood/Thot-P2P","commit_stats":null,"previous_names":["emagood/thot-p2p"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/emagood%2FThot-P2P","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/emagood%2FThot-P2P/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/emagood%2FThot-P2P/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/emagood%2FThot-P2P/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/emagood","download_url":"https://codeload.github.com/emagood/Thot-P2P/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":244721646,"owners_count":20498986,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["e-net","godot","godot-engine","godot4","p2p","tcp-socket","websocket"],"created_at":"2024-11-26T07:07:30.319Z","updated_at":"2025-03-21T01:32:44.308Z","avatar_url":"https://github.com/emagood.png","language":"GDScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# P2P Communication App with Godot 4.4\n##  Thot-P2P\n\n## Descripción\n\nEsta aplicación permite la comunicación P2P (Peer-to-Peer) entre dispositivos utilizando diferentes métodos de implementación en Godot 4.4: ENet,\nWebSocket, y TCP_Peer. Su objetivo principal es conectar dispositivos e intercambiar información, datos o mensajes.\n\n## Características\n\n- **Conexiones P2P**: Soporte para conexiones P2P utilizando ENet, WebSocket, y TCP_Peer.\n- **Intercambio de Información**: Permite enviar y recibir mensajes entre dos dispositivos conectados.\n- **Implementación Modular**: Cada método de conexión está implementado como un módulo independiente, facilitando su uso y modificación.\n\n## Requisitos\n\n- Godot Engine 4.4 o superior.\n- Conexión a Internet y/o lolcalhost.\n- Dos dispositivos compatibles con Godot (pueden ser ordenadores, smartphones, etc.).\n\n## Instalación\n\n1. **Clona el repositorio**:\n    ```sh\n    git clone https://github.com/emagood/Thot-P2P.git\n    cd Thot-P2P\n    ```\n\n2. **Abre el proyecto en Godot**:\n    - Inicia Godot Engine.\n    - Selecciona \"Import\" y navega hasta la carpeta del proyecto.\n    - Selecciona el archivo `project.godot`.\n\n## Uso\n\n1. **Selecciona el método de conexión**:\n    - Dentro de Godot, abre la escena principal.\n    - En el inspector, selecciona el método de conexión deseado (ENet, WebSocket, TCP_Peer).\n\n2. **Inicia la aplicación en ambos dispositivos**:\n    - Ejecuta el proyecto en dos dispositivos.\n    - Asegúrate de que ambos dispositivos estén en la misma red (para ENet y TCP_Peer) o tengan acceso a Internet (para WebSocket).\n\n3. **Conexión y comunicación**:\n    - En uno de los dispositivos, selecciona \"Host\" para iniciar el servidor.\n    - En el otro dispositivo, introduce la dirección IP del host y selecciona \"Connect\".\n    - Una vez conectados, puedes enviar mensajes entre los dispositivos utilizando la interfaz de usuario.\n\n## Métodos de Conexión\n\n### ENet\n\nENet es una biblioteca de red confiable para la comunicación en tiempo real.\nEs ideal para aplicaciones que requieren baja latencia y alta confiabilidad.\n- Juegos en línea que necesitan comunicación en tiempo real con baja latencia.\n- Aplicaciones de chat en tiempo real.\n- Transferencia de archivos pequeños en redes locales.\n\n### WebSocket\n\nWebSocket proporciona una comunicación bidireccional a través de una sola conexión TCP.\nEs ideal para aplicaciones basadas en web que requieren una comunicación en tiempo real.\n- Aplicaciones web interactivas que necesitan actualizaciones en tiempo real, como chats y colaboración en línea.\n- Juegos multijugador basados en navegador.\n- Aplicaciones IoT que requieren comunicación constante con un servidor web.\n\n### TCP_Peer\n\nTCP_Peer utiliza el protocolo TCP estándar para la comunicación. Es confiable y fácil de implementar para conexiones de red básicas.\n- Aplicaciones de transferencia de archivos que requieren fiabilidad en la entrega de datos.\n- Herramientas de administración remota donde la fiabilidad es más importante que la latencia.\n- Comunicación entre sistemas distribuidos que necesitan asegurar la entrega de mensajes.\n\n## Usos Útiles\n\n1. **Juegos Multijugador**: Crea juegos que permitan a los jugadores conectarse y competir en tiempo real, ya sea en una red local o a través de Internet.\n2. **Aplicaciones de Chat**: Desarrolla aplicaciones de chat en tiempo real que permitan a los usuarios comunicarse instantáneamente.\n3. **Colaboración en Tiempo Real**: Facilita la colaboración en tiempo real en proyectos, como editores de texto colaborativos o aplicaciones de dibujo.\n4. **Intercambio de Archivos**: Implementa aplicaciones para el intercambio de archivos que aseguren la entrega fiable de datos.\n5. **Control Remoto**: Crea herramientas de administración y control remoto para gestionar dispositivos o sistemas distribuidos.\n\n## Contribuir\n\n¡Las contribuciones son bienvenidas! Si deseas contribuir, por favor, realiza un fork del repositorio, crea una rama con tus cambios y envía un pull request.\n\n## Licencia\n\nEste proyecto está licenciado bajo la Licencia MIT. Consulta el archivo `LICENSE` para obtener más detalles.\n\n\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Femagood%2Fthot-p2p","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Femagood%2Fthot-p2p","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Femagood%2Fthot-p2p/lists"}