Giter Club home page Giter Club logo

nova's People

Contributors

gyf1214 avatar huisedenanhai avatar kcfindstr avatar longtianmu avatar lpaladin avatar qiankanglai avatar sepcnt avatar woct0rdho avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

nova's Issues

尝试接入LoopScrollRect

哈喽,今天晚上摸了会 把LogWindow的改成LoopScrollRect实现了下 https://github.com/qiankanglai/Nova/tree/scroll

我自测了下发现了两个比较蛋疼的问题:

  • LogEntry里的文字高度第一次的时候始终算不准,导致打开LogWindow的时候无法很好的固定在底部... 我目前临时trick的解决方案是在打开之后的LateUpdate里补刷一次
    • 我稍微跟了下TMP,发现如果是输入的文本天然带换行的话,那么计算出来的preferred height是没问题的;
    • 如果输入的文本是比较长的单行,那么TMP得到的preferred height始终是单行高度orz
  • 对于变高元素的LoopScrollRect来说,右侧的scroll bar其实是有问题的,拖拽的时候会感受到一点鬼畜-.-
    • 这个问题核心是因为无法获取到真实的所有元素高度,我目前是根据当前显示的元素的平均值来估算的
    • 暂时我没有特别好的思路来解决:如果暴露接口让外部来传入,使用起来就非常反人类了(而且还会涉及上一个问题里 如何保证算对preferred height的问题);还有一个可能的思路就是直接使用元素个数来计算scroll bar,这样视觉上能稳定(bar的长度不会跳变),但是手感上就会遇到时快时慢的问题...

关于Lua的杂七杂八的问题(不定期更新)

我们目前使用的Lua运行库为ToLua#,它使用的Lua语言版本为LuaJIT,与Lua 5.1完全兼容,Lua 5.2的特性只有一部分兼容

built_in.lua开头的地方禁止了读取没有定义的全局变量,会报错Attempt to read undeclared global variable

我们的Lua parser支持Unicode字符。比如你把字符串'abc'外面的英文引号打错成了中文引号‘abc’,parser就会把它当成一个叫做‘abc’的变量,不会在parsing时报错,而会在运行时报变量没有定义的错

macOS上load的行为似乎与Windows上不同。如果出现报错bad argument #1 to 'load' (function expected, got string),可以试试把load换成loadstring

目前preload系统使用正则表达式来识别show之类的函数,具体可以看DialogueEntryPreprocessor.cs。函数的参数如果是字符串,必须用单引号或者双引号(而不是方括号)来表示,否则无法识别

希望文档补充Quick Start

hi~ 最近在学习使用Nova,我在新增ch5.txt后将ch1末尾改为@<| jump_to 'ch5' |>,发现在章节选取页面只有第一章到第三章的索引,第四章和第五章丢失了;另一方面注意到Tools下有不少工具但wiki中似乎没介绍到

想了解下Nova开发时的工作流程是怎样的,比如新增章节、新增动画等等

谢谢~

关于Live2D打包产生的问题

不论是将Live2D移动到 Nova/Sourecs 目录下,还是手动创建Live2D的asmdef文件并在Nova.asmdef文件中引用,打包时指向同一个错误:
Script updater for Library\Bee\artifacts\1900b0aP.dag\Nova.dll failed to produce updates.txt file
初步猜测与项目依赖相关,但暂时未找到解决方案

关于Unity的杂七杂八的问题(不定期更新)

如果在Unity Editor中开始游戏时闪退,先检查一下是不是硬盘满了

然后可以试试清空存档:在Unity Editor的上面的菜单中,点击Nova -> Clear All

如果演出方面遇到任何奇怪的问题,也可能需要清空存档

打包给别人测试时,也可能需要在别人的电脑上清空存档,存档和快捷键设置的位置详见:
https://docs.unity3d.com/ScriptReference/Application-persistentDataPath.html
其他设置的位置详见:
https://docs.unity3d.com/ScriptReference/PlayerPrefs.html

(但是在游戏全部做完之后,打包给别人玩,别人之前也没有玩过测试版,那么正常情况下肯定不用清空存档,否则就是bug,请告诉我们)

如果用Unity Editor上面的那个按钮退出游戏模式,一般会有空引用之类的报错,不用管它。如果在游戏中正常退出游戏,应该没有报错,否则就是bug,请告诉我们

如果打开Unity Editor时出现报错Library/PackageCache/com.unity.render-pipelines.universal ...,建议升级Unity到最新的小版本(不用改2020/2021/2022的大版本),不方便的话也可以在package manager里降级URP到推荐的版本

如果build时Scripting Backend是Mono,并且游戏安装路径中有中文,可能会出现LuaRuntime的问题,用IL2CPP就不会有这个问题,详见mono/mono#7117

关于Branch中嵌入Branch的问题

请问如果我尝试在Branch中嵌入Branch,即脚本中会出现形如

@<| label 'm_end_choice' |>
@<| jump_to 'l_end_choice' |>
@<| label 'l_end_choice' |>

的情况,是行得通的吗?我尝试后出现了如图报错:
image

关于字体的问题

请问生成了font asset并且创建了新的material后,又怎么设置更换字体呢?

了解Nova时遇到的一些问题

Hi 最近摸鱼时候了解了下Nova 可能想用来和朋友一起移植一款AVG。看代码过程中遇到了一些问题or建议 希望能一起讨论下

  • 使用说明中需要把几个文件夹从Example/Colorless里挪出,我试了下最新版本其实可以直接跑(而且我看了下目前master分支用的是Resources这个机制,确实子文件夹是可以直接获取的)从上手角度来说,能做到开箱即用肯定更加舒服
  • 立绘利用了SpriteMerge机制,但是其实本身AVG类的相对不会draw call bound(特别是PC就更加不敏感了),如果考虑手机版的话其实从硬件压缩格式->uncompressed RT反而亏了,有点吃不准这个机制的出发点orz

绝大多数Unity能做的gameplay都可以加到Nova里

关于这个其实是我目前比较头疼的地方,譬如希望加入一些特殊玩法的话,和Nova本身如何结合比较合适?例如某个chapter需要打俄罗斯方块,这时候Nova本体部分如何暂停、游戏完成后如何交互更新一些状态信息等?

Tutorial04 播放到警告弹出框后无法继续

对照着txt,播放到这一句后就无法继续了,关闭了警告弹出框后,鼠标左键没有任何效果。

系统:MacOS 10.15.6
Unity版本:2021.3.14f1
clone from master后没有人工修改version,直接让unity完成的版本升级,然后打开main scene播放至此

是我哪里操作不对吗,感谢。

如果我希望在脚本里调用新的控制器的话需要进行什么操作

我希望能添加一个LIve2D的控制器,我在原有SpriteController的基础上复制了一份,并在里面追加了一个LoadLive2D的公开方法,也在graphics.lua中追加了一个函数,但是他提示我说field or property LoadLive2D does not exist,意思是找不到这个方法,我是漏了什么操作吗?

Logo Design: Nova

Hello!

I'm a graphic designer and I like to support open source projects. I would like to design a logo for your project if you interested, I will be happy to work with you! :)

Best Regards

Baran Pirinçal

Graphic Designer

macOS 下打包为 Intel + Apple Silicon 架构时启动后闪退

开发环境

Unity 版本:2020.3.21f1
macOS 版本:macOS Monterey 12.1
CPU:Apple M1

问题描述

打包为 Intel 架构时运行正常,而 Intel + Apple Silicon 架构时启动游戏后闪退。

打开 Player.log 查看日志显示 libtolua 不兼容。

Player.log

Fallback handler could not load library /Users/yaqinking/Documents/github/Nova/Builds/NovaExample.app/Contents/Frameworks/MonoEmbedRuntime/osx/libtolua
System.DllNotFoundException: tolua
  at (wrapper managed-to-native) LuaInterface.LuaDLL.luaL_newstate()
  at LuaInterface.LuaStatePtr.LuaNewState () [0x00000] in <b64c230601c2480ebd3dde688c74d236>:0 
  at LuaInterface.LuaState..ctor () [0x000e9] in <b64c230601c2480ebd3dde688c74d236>:0 
  at Nova.LuaRuntime.Init () [0x00014] in <b64c230601c2480ebd3dde688c74d236>:0 
  at Nova.LuaRuntime.get_Instance () [0x0009d] in <b64c230601c2480ebd3dde688c74d236>:0 
  at Nova.ScriptLoader.ForceInit (System.String path) [0x0001d] in <b64c230601c2480ebd3dde688c74d236>:0 
  at Nova.ScriptLoader.Init (System.String path) [0x00009] in <b64c230601c2480ebd3dde688c74d236>:0 
  at Nova.GameState.Awake () [0x00000] in <b64c230601c2480ebd3dde688c74d236>:0 
Exception: Nova - New Game Object: LuaRuntime methods should be called after Init().

关于接入Live2D SDK

Nova/Sources 文件夹下的脚本无法引用Live2D的命名空间,如果想接入Live2D的话有其他什么办法吗

demo项目build&run失败了

在调试环境下可以跑起来正常运行,但是打成exe以后进入游戏出现unity标志后就闪退了
unity版本: 2020.3.5f1c1 (548653c6c3de)

奇怪的问题 求助 - 当我运行colorless 的工程时,到第二章

Nova的大佬你们好:
非常nice的工程,我发现了一个问题不知道是不是都会出现

<|
show(陈高天, 'normal', {0, -0.3, 0.4})
|>
show也可以显示角色立绘,gaotian对应的就是Hierarchy里的Characters/Gaotian

ParserException: Syntax error while parsing lazy execution block.
characterName: , displayName: , dialogue:
stage: Default, code:
__Nova.action_coroutine = coroutine.start(function()
__Nova.coroutineHelper:AcquireActionPause()
action_before_lazy_block('')
-- Begin original code block
show(陈高天, 'normal')
-- End original code block
action_after_lazy_block('')
__Nova.coroutineHelper:ReleaseActionPause()
end)
Nova.DialogueEntryParser.ParseDialogueEntries (System.Collections.Generic.IReadOnlyList`1[T] chunks) (at Assets/Nova/Sources/Core/ScriptParsing/DialogueEntryParser.cs:206)
Nova.ScriptLoader.AddDeferredDialogueChunks (Nova.FlowChartNode node) (at Assets/Nova/Sources/Core/ScriptParsing/ScriptLoader.cs:233)
我debug 看到是个regex解析问题 ,但是我看一章也用了这个markdown的问题

([^]*)` 我在网上的regex c#版也试了 应该是正常的 ,求助如何解决

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.