当前位置:   article > 正文

Cocos Creator python游戏分布式强连接Ku框架_cocos creator游戏框架

cocos creator游戏框架

游戏录像

Cocos Creator python游戏分布式强连接框架

介绍

cocos creator前端 python后端
后端集成了tcp、http、websocket、rpc等请求方式。(rpc、http和websocket是基于tcp自行封装的)
使用了分布式开发模式,封装了快速的跨服务调用方式。
使用单线程、多进程的开发模式,可以避免多线程导致的逻辑混乱。

架构

1.前端采用ecs、监听者(prop)、事件、mvc等的设计模式,同时有一键生成界面代码功能。

2.服务端采用类似前端的ecs设计模式(为了方便舍弃了实体,也就是说component可以直接添加到component上)。

3.服务器采用分布式架构,服务模块设计分三部分:
Relam(校验)、Hall(游戏大厅)、Map(游戏场景)
a.玩家登录使用http请求校验层的login接口,登录成功后,可以获得用户的uid还有游戏大厅的websocket url。
b.通过获得的url,玩家可以与Hall游戏大厅建立强连接,同时每隔一定时间发送心跳包。玩家可以通过与Hall的强连接发送聊天信息。
c.玩家可以进入Map游戏场景(Map服务器可以部署多个)与其他玩家对战,点击进入场景按钮后,玩家获得Map返回的websocket url,玩家就可以与Map进行强连接,一旦连接成功,就可以断开与Hall层的连接。
d.玩家退出游戏场景回到游戏大厅时,玩家通过http请求获得Hall的websocket url,然后玩家就可以退出Map游戏场景,进入Hall游戏大厅。

配置

1.后端 pycharm需要配置启动项

 

2.前端 使用cocos creator打开项目选择main场景启动即可

3.配置nginx

  1. #user  nobody;
  2. worker_processes  1;
  3. #error_log  logs/error.log;
  4. #error_log  logs/error.log  notice;
  5. #error_log  logs/error.log  info;
  6. #pid        logs/nginx.pid;
  7. events {
  8.     worker_connections  1024;
  9. }
  10. http {
  11.     include       mime.types;
  12.     default_type  application/octet-stream;
  13.     sendfile        on;
  14.     #tcp_nopush     on;
  15.     #keepalive_timeout  0;
  16.     keepalive_timeout  65;
  17.     server {
  18.        listen       6888;
  19.        server_name  127.0.0.1;
  20.        location / {
  21.              proxy_pass http://127.0.0.1:7456/;
  22.        }
  23.        location /res/ {
  24.              proxy_pass http://127.0.0.1:8885/;
  25.        }
  26.        location /api/relam0/ {
  27.              proxy_pass http://127.0.0.1:15100/;
  28.        }
  29.        location /ws/relam0/ {
  30.              proxy_pass http://127.0.0.1:15300/;
  31.        }
  32.        location /api/hall0/ {
  33.              proxy_pass http://127.0.0.1:16100/;
  34.        }
  35.        location /ws/hall0/ {
  36.              proxy_pass http://127.0.0.1:16300/;
  37.        }
  38.        location /api/map0/ {
  39.              proxy_pass http://127.0.0.1:17100/;
  40.        }
  41.        location /ws/map0/ {
  42.              proxy_pass http://127.0.0.1:17300/;
  43.        }
  44.        location /api/map1/ {
  45.              proxy_pass http://127.0.0.1:17101/;
  46.        }
  47.        location /ws/map1/ {
  48.              proxy_pass http://127.0.0.1:17301/;
  49.        }
  50.     }
  51. }

4.配置redis 设置host为127.0.0.1 端口为6379

5.运行游戏(注意要把游戏打开的ip改为127.0.0.1:6888,主要是为了解决cocos creator跨域访问问题)

开发工具

Cocos Creator 3.6

Python3.9.7

Pycharm

其他说明

项目基本没有其他特别的框架,也没有特别的依赖库,基本解压后就能运行。

美术资源来自网络

下载地址

Cocos Creator python游戏分布式强连接Ku框架

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/小蓝xlanll/article/detail/152469
推荐阅读
相关标签
  

闽ICP备14008679号